:root{line-height:1.5;font-weight:400;color-scheme:light;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--color-text-primary: #213547;--color-text-secondary: #666;--color-text-muted: #888;--color-border: #ccc;--color-border-light: #ddd;--color-border-lighter: #eee;--color-bg-page: #f5f5f5;--color-bg-card: #fff;--color-bg-subtle: #f9f9f9;--color-bg-input: #fff;--color-bg-muted: #f0f0f0;--color-accent: #7c3aed;--color-accent-hover: #6d28d9;--color-accent-light: rgba(124, 58, 237, .15);--color-accent-lighter: #ede9fe;--color-accent-lightest: #ddd6fe;--color-success: #2e7d32;--color-success-dark: #1b5e20;--color-success-medium: #388e3c;--color-success-light: #a5d6a7;--color-success-bg: #e8f5e9;--color-warning: #e65100;--color-warning-dark: #bf360c;--color-warning-text: #856404;--color-warning-light: #ffcc80;--color-warning-bg: #fff3cd;--color-warning-bg-light: #fff9e6;--color-warning-border: #ffc107;--color-error: #c62828;--color-error-light: #ef9a9a;--color-error-bg: #ffebee;--color-error-border: #f44336;--color-buffer-hover: #c4b5fd;--color-neutral-bg: #e0e0e0;--font-family-base: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, sans-serif;--font-family-mono: "Courier New", Courier, monospace;--font-size-xs: .75rem;--font-size-sm: .8125rem;--font-size-base: .875rem;--font-size-md: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.75rem;--font-size-3xl: 2rem;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-3quarter: .75rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-full: 50%;--radius-pill: 999px;--input-width-xs: 80px;--input-width-sm: 100px;--input-width-md: 120px;--input-width-lg: 150px;--input-width-xl: 200px;--grid-column-sidebar: 300px;--grid-column-buffer-min: 180px;--grid-column-stat-min: 120px;--transition-fast: .2s;--transition-base: .3s;color:var(--color-text-primary);background-color:var(--color-bg-page)}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;font-family:var(--font-family-base)}#root{width:100%}a{font-weight:500;color:var(--color-accent);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3,h4{margin-top:0;margin-bottom:var(--spacing-sm)}input,select,textarea{font-family:inherit;font-size:inherit}input[type=number],input[type=text],select,textarea{padding:var(--spacing-sm) .75em;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-input)}input[type=number]:focus,input[type=text]:focus,select:focus,textarea:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent-light)}button{font-family:inherit;font-size:inherit;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-card);cursor:pointer;transition:all var(--transition-fast)}button:hover:not(:disabled){background:var(--color-bg-subtle);border-color:var(--color-text-muted)}button:disabled{opacity:.6;cursor:not-allowed}label{display:block;margin-bottom:var(--spacing-xs);font-weight:500}.hint{color:var(--color-text-secondary);font-size:var(--font-size-sm)}.app{max-width:1200px;margin:0 auto;padding:var(--spacing-md)}.app-nav{display:flex;align-items:center;gap:var(--spacing-lg);padding:var(--spacing-md);background:var(--color-bg-card);border-radius:var(--radius-md);margin-bottom:var(--spacing-lg);box-shadow:0 1px 3px #0000001a;flex-wrap:wrap}.app-nav a{color:var(--color-accent);text-decoration:none;font-weight:500;transition:color var(--transition-fast)}.app-nav a:hover{color:var(--color-accent-hover);text-decoration:underline}.nav-right{margin-left:auto;display:flex;align-items:center;gap:var(--spacing-md)}.nav-github{display:flex;align-items:center;gap:.25rem}.app-header{text-align:center;margin-bottom:var(--spacing-xl);padding:var(--spacing-lg) var(--spacing-md);background:linear-gradient(135deg,#c0392b,#8b1ea8 45%,#1565c0);border-radius:var(--radius-lg);color:#fff;box-shadow:0 4px 16px #8b1ea859}.app-header h1{font-size:var(--font-size-2xl);margin-bottom:var(--spacing-xs);font-weight:600;letter-spacing:-.02em}.app-header .subtitle{color:#ffffffe6;margin:0;font-size:var(--font-size-base)}.app-header .version{display:inline-block;margin-top:var(--spacing-sm);padding:.125rem .5rem;background:#fff3;border-radius:var(--radius-sm);font-size:var(--font-size-xs);color:#ffffffe6}.app-main{display:flex;flex-direction:column;gap:var(--spacing-xl)}section{background:var(--color-bg-card);border-radius:var(--radius-md);padding:var(--spacing-lg);box-shadow:0 1px 3px #0000001a}.step-section{background:var(--color-bg-card);border-radius:var(--radius-md);padding:var(--spacing-lg);box-shadow:0 1px 3px #0000001a;border-left:4px solid var(--color-border-light);transition:border-color .2s}.step-section.step-active{border-left-color:var(--color-accent)}.step-section.step-complete{border-left-color:#22c55e}.step-heading{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.step-badge{display:inline-flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;border-radius:50%;font-size:var(--font-size-xs);font-weight:700;flex-shrink:0;background:var(--color-border-light);color:var(--color-text-secondary);transition:background .2s,color .2s}.step-section.step-active .step-badge{background:var(--color-accent);color:#fff}.step-section.step-complete .step-badge{background:#22c55e;color:#fff}.step-title{font-size:var(--font-size-md);font-weight:600;margin:0;color:var(--color-text-secondary)}.step-section.step-active .step-title,.step-section.step-complete .step-title{color:var(--color-text)}.database-loader{text-align:center;padding:3rem}.database-loader.loading .spinner{display:inline-block;width:40px;height:40px;border:3px solid var(--color-border-lighter);border-top:3px solid var(--color-accent);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:var(--spacing-md)}.database-loader.error{color:var(--color-error)}.database-warning{background:var(--color-warning-bg);color:var(--color-warning-text);padding:var(--spacing-3quarter) var(--spacing-md);border-radius:var(--radius-sm);margin-bottom:var(--spacing-md)}.warning-icon{margin-right:var(--spacing-sm)}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.setup-section{display:flex;flex-direction:column;gap:var(--spacing-lg)}.setup-row{display:flex;flex-wrap:wrap;gap:var(--spacing-xl)}.solvent-selector{min-width:200px}.solvent-selector label{display:block;margin-bottom:var(--spacing-sm);font-weight:500}.solvent-cards{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.solvent-card{padding:var(--spacing-sm) var(--spacing-md);border:2px solid var(--color-border-light);border-radius:var(--radius-md);background:var(--color-bg-card);cursor:pointer;font-family:inherit;font-size:var(--font-size-base);font-weight:500;color:var(--color-text-primary);transition:all var(--transition-fast);white-space:nowrap}.solvent-card:hover:not(.selected){border-color:var(--color-accent);color:var(--color-accent)}.solvent-card.selected{border-color:var(--color-accent);background:var(--color-accent-lighter);color:var(--color-accent-hover);box-shadow:inset 0 0 0 1px var(--color-accent)}.conditions-panel{flex:1}.conditions-panel h3{font-size:var(--font-size-md);margin-bottom:var(--spacing-md)}.help-icon{display:inline-block;position:relative;margin-left:.35rem;color:var(--color-accent);cursor:help;font-size:.9em;vertical-align:middle;opacity:.7;transition:opacity var(--transition-fast);-webkit-tap-highlight-color:transparent}.help-icon:hover,.help-icon:focus,.help-icon:active{opacity:1}.help-icon[data-tooltip]{cursor:pointer}.help-icon[data-tooltip]:before{content:attr(data-tooltip);position:absolute;bottom:125%;left:50%;transform:translate(-50%);padding:var(--spacing-sm) var(--spacing-3quarter);background:#000000e6;color:#fff;font-size:var(--font-size-xs);line-height:1.4;white-space:pre-wrap;max-width:280px;width:max-content;border-radius:var(--radius-md);opacity:0;visibility:hidden;transition:opacity var(--transition-fast),visibility var(--transition-fast);pointer-events:none;z-index:1000}.help-icon[data-tooltip]:after{content:"";position:absolute;bottom:115%;left:50%;transform:translate(-50%);border:5px solid transparent;border-top-color:#000000e6;opacity:0;visibility:hidden;transition:opacity var(--transition-fast),visibility var(--transition-fast);pointer-events:none;z-index:1000}.help-icon[data-tooltip]:hover:before,.help-icon[data-tooltip]:hover:after,.help-icon[data-tooltip]:focus:before,.help-icon[data-tooltip]:focus:after,.help-icon[data-tooltip]:active:before,.help-icon[data-tooltip]:active:after{opacity:1;visibility:visible}.help-icon[data-tooltip]{outline:none;-webkit-tap-highlight-color:rgba(26,115,232,.2);border-radius:50%}.help-icon[data-tooltip]:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}@media(max-width:768px){.help-icon[data-tooltip]:before{left:auto;right:0;transform:none;max-width:240px}.help-icon[data-tooltip]:after{left:auto;right:10px;transform:none}}.condition-row{display:flex;align-items:flex-start;gap:var(--spacing-md);margin-bottom:var(--spacing-3quarter)}.condition-input{flex:0 0 auto}.condition-input label{display:block;margin-bottom:.25rem}.condition-input input{width:var(--input-width-md)}.condition-checkbox{display:flex;align-items:center;margin-top:1.75rem}.condition-checkbox label{display:flex;align-items:center;gap:var(--spacing-sm);font-weight:400;cursor:pointer}.condition-checkbox input[type=checkbox]{width:16px;height:16px;flex-shrink:0}.buffer-selector{margin-top:var(--spacing-md)}.buffer-selector h3{font-size:var(--font-size-md);margin-bottom:var(--spacing-sm)}.buffer-selector-hint{display:flex;align-items:center;gap:var(--spacing-sm);flex-wrap:wrap;margin-bottom:var(--spacing-xs)}.buffer-selector-hint .hint{flex:1}.buffer-selector-actions{display:flex;gap:var(--spacing-xs)}.buffer-action-btn{padding:.15rem .6rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-subtle);font-size:var(--font-size-xs);font-weight:500;color:var(--color-text-secondary);cursor:pointer;transition:all .12s}.buffer-action-btn:hover:not(:disabled){border-color:var(--color-accent);color:var(--color-accent)}.buffer-action-btn:disabled{opacity:.4;cursor:default}.buffer-selector.disabled,.buffer-selector.empty{color:var(--color-text-secondary)}.buffer-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(var(--grid-column-buffer-min),1fr));gap:var(--spacing-3quarter);margin-top:var(--spacing-3quarter)}.buffer-tile{display:flex;flex-direction:column;align-items:center;padding:var(--spacing-3quarter);border:2px solid var(--color-border-light);border-radius:var(--radius-md);background:var(--color-bg-card);text-align:left;transition:all var(--transition-fast)}.buffer-structure{display:flex;align-items:center;justify-content:center;width:100%;background:var(--color-bg-subtle);border-radius:var(--radius-sm);margin-bottom:var(--spacing-sm);overflow:hidden}.buffer-tile:hover:not(.selected){border-color:var(--color-buffer-hover);box-shadow:0 2px 8px #0000001a}.buffer-tile.selected{border-color:var(--color-accent);background:var(--color-accent-lighter);box-shadow:inset 0 0 0 1px var(--color-accent)}.buffer-tile.selected:hover{background:var(--color-accent-lightest)}.buffer-name{font-weight:600;margin-bottom:var(--spacing-sm);align-self:flex-start}.buffer-nuclei{display:flex;gap:var(--spacing-sm);margin-bottom:var(--spacing-xs);align-self:flex-start;width:100%}.nucleus-icon{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-neutral-bg);border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:500}.buffer-pka{font-size:var(--font-size-xs);color:var(--color-text-secondary);align-self:flex-start}.referencing-panel{margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--color-border-lighter)}.referencing-panel h3{font-size:var(--font-size-md);margin-bottom:var(--spacing-md)}.referencing-panel.compact{padding-top:var(--spacing-3quarter)}.referencing-step.compact{margin-bottom:var(--spacing-3quarter)}.step-row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--spacing-md)}.step-question{font-weight:500}.radio-group.inline{display:flex;gap:var(--spacing-md)}.radio-group.inline label{display:flex;align-items:center;gap:.35rem;font-weight:400;cursor:pointer}.radio-group.inline input[type=radio]{margin:0}.dss-shift-input.inline{display:flex;align-items:center;gap:var(--spacing-sm)}.dss-shift-input.inline label{display:flex;align-items:center;gap:.35rem;font-weight:400}.dss-shift-input.inline input{width:var(--input-width-xs)}.referencing-message{margin-top:var(--spacing-sm)}.referencing-message .hint{font-size:var(--font-size-base);color:var(--color-text-secondary);font-style:italic}.proton-frequency{margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--color-border-lighter)}.proton-frequency input{width:var(--input-width-lg);margin-left:var(--spacing-sm)}.nuclei-references{display:flex;flex-wrap:wrap;gap:var(--spacing-lg)}.nucleus-referencing{min-width:200px}.nucleus-referencing .nucleus-label{font-weight:600;margin-bottom:var(--spacing-sm)}.referencing-options select{width:100%;margin-bottom:var(--spacing-sm)}.dss-input,.unreferenced-options{margin-top:var(--spacing-sm)}.dss-input input{width:var(--input-width-sm);margin-left:var(--spacing-sm)}.expected-freq{font-size:var(--font-size-base);color:var(--color-text-secondary);margin-bottom:var(--spacing-sm)}.refine-checkbox{display:flex;align-items:center;gap:var(--spacing-sm);font-weight:400}.headline-result{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--radius-md);margin-bottom:var(--spacing-lg)}.headline-result.calculating{background:var(--color-bg-muted);color:var(--color-text-secondary)}.headline-result.success{background:var(--color-success-bg);border:1px solid var(--color-success-light)}.headline-result.warning{background:var(--color-warning-bg-light);border:1px solid var(--color-warning-light)}.headline-result.warning .headline-label{color:var(--color-warning)}.headline-result.warning .headline-value{color:var(--color-warning-dark)}.headline-result.warning .headline-uncertainty{color:var(--color-warning)}.headline-warning{display:block;font-size:var(--font-size-sm);color:var(--color-warning);font-weight:400;margin-top:var(--spacing-xs)}.headline-result.warning .view-details-button{border-color:var(--color-warning);color:var(--color-warning)}.headline-result.warning .view-details-button:hover{background:var(--color-warning);color:#fff}.headline-result.error{background:var(--color-error-bg);border:1px solid var(--color-error-light);flex-direction:column;align-items:flex-start;gap:var(--spacing-sm)}.headline-spinner{display:inline-block;width:20px;height:20px;border:2px solid var(--color-border-light);border-top-color:var(--color-accent);border-radius:50%;animation:spin .8s linear infinite;margin-right:.75rem}.headline-text{font-size:var(--font-size-md)}.headline-ph{display:flex;flex-direction:column}.headline-label{font-size:var(--font-size-base);color:var(--color-success);font-weight:500;text-transform:uppercase;letter-spacing:.5px}.headline-result.error .headline-label{color:var(--color-error)}.headline-value{font-size:var(--font-size-3xl);font-weight:700;color:var(--color-success-dark);font-family:var(--font-family-mono)}.headline-uncertainty{font-size:var(--font-size-xl);font-weight:400;color:var(--color-success-medium)}.headline-error-text{color:var(--color-error);font-size:var(--font-size-base)}.view-details-button{padding:var(--spacing-sm) var(--spacing-md);background:var(--color-bg-card);border:1px solid var(--color-success);color:var(--color-success);border-radius:var(--radius-md);font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.view-details-button:hover{background:var(--color-success);color:#fff}.nucleus-tab-panel{margin-top:var(--spacing-md)}.nucleus-tab-panel.empty{text-align:center;padding:var(--spacing-xl);color:var(--color-text-secondary)}.tab-header{display:flex;gap:var(--spacing-xs);border-bottom:2px solid var(--color-border-light);margin-bottom:var(--spacing-md);align-items:flex-end}.uncertainty-bands-toggle{margin-left:auto;margin-bottom:4px;padding:0 var(--spacing-xs);font-size:var(--font-size-xs);color:var(--color-text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.tab-button{padding:var(--spacing-sm) var(--spacing-md);border:none;border-bottom:2px solid transparent;background:none;font-weight:500;color:var(--color-text-secondary);margin-bottom:-2px}.tab-button:hover{color:var(--color-accent);background:none}.tab-button.active{color:var(--color-accent);border-bottom-color:var(--color-accent)}.tab-content{position:relative}.tab-pane.hidden{position:absolute;visibility:hidden;pointer-events:none;width:100%;z-index:-1}.tab-pane.active{position:relative;visibility:visible;pointer-events:auto}.nucleus-content{display:grid;grid-template-columns:1fr var(--grid-column-sidebar);gap:var(--spacing-lg)}@media(max-width:768px){.nucleus-content{grid-template-columns:1fr}}.plot-section{min-height:400px}.chemical-shift-plot.empty{display:flex;align-items:center;justify-content:center;background:var(--color-bg-muted);border-radius:var(--radius-md);color:var(--color-text-secondary)}.shift-input-area{display:flex;flex-direction:column}.shift-input-area textarea{flex:1;min-height:200px;font-family:var(--font-family-mono);resize:vertical}.shift-count{margin-top:var(--spacing-sm);font-size:var(--font-size-base);color:var(--color-text-secondary)}.shift-uncertainty-input{margin-top:var(--spacing-3quarter);padding-top:var(--spacing-3quarter);border-top:1px solid var(--color-border-lighter)}.shift-uncertainty-input label{display:flex;align-items:center;gap:var(--spacing-sm);flex-wrap:wrap}.shift-uncertainty-input .uncertainty-label{font-size:var(--font-size-base);color:var(--color-text-primary)}.shift-uncertainty-input input{width:var(--input-width-xs);padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:var(--font-size-base)}.shift-uncertainty-input .hint{font-size:var(--font-size-sm);color:var(--color-text-muted);margin-left:var(--spacing-sm)}.spectrometer-freq-input{margin-top:var(--spacing-3quarter);padding-top:var(--spacing-3quarter);border-top:1px solid var(--color-border-lighter)}.spectrometer-freq-input label{display:flex;align-items:center;gap:var(--spacing-sm);flex-wrap:wrap}.spectrometer-freq-input .freq-label{font-size:var(--font-size-base);color:var(--color-text-primary)}.spectrometer-freq-input input{width:var(--input-width-sm);padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:var(--font-size-base)}.spectrometer-freq-input .expected-freq,.spectrometer-freq-input .linked-offset{display:block;margin-top:var(--spacing-xs);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.fitted-reference-display{margin-top:var(--spacing-3quarter);padding:var(--spacing-sm) var(--spacing-md);background:var(--color-success-bg);border-radius:var(--radius-sm);font-size:var(--font-size-sm)}.fitted-ref-label{color:var(--color-text-secondary);margin-right:var(--spacing-sm)}.fitted-ref-value{font-family:var(--font-family-mono);font-weight:500;color:var(--color-success)}.calculate-button-container{display:flex;flex-direction:column;align-items:center;margin-top:var(--spacing-lg);padding-top:var(--spacing-lg);border-top:1px solid var(--color-border-lighter)}.calculate-button{padding:var(--spacing-3quarter) var(--spacing-xl);font-size:var(--font-size-lg);font-weight:600;background:var(--color-accent);color:#fff;border:none;border-radius:var(--radius-md)}.calculate-button:hover:not(:disabled){background:var(--color-accent-hover)}.calculate-button.loading{opacity:.8}.calculate-button .spinner{display:inline-block;width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite;margin-right:var(--spacing-sm);vertical-align:middle}.disabled-reason{margin-top:var(--spacing-sm);color:var(--color-text-secondary);font-size:var(--font-size-base)}.results-panel{margin-top:var(--spacing-md)}.results-panel h2{font-size:var(--font-size-xl);margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-sm);border-bottom:2px solid var(--color-accent)}.fitted-parameters{margin-bottom:var(--spacing-lg)}.fitted-parameters h3{font-size:var(--font-size-md);margin-bottom:var(--spacing-md)}.parameter-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.parameter-row{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--spacing-sm);padding:var(--spacing-sm);background:var(--color-bg-subtle);border-radius:var(--radius-sm);color:var(--color-text-primary)}.parameter-row.primary{background:var(--color-accent-lighter);font-size:var(--font-size-xl)}.parameter-row.warning{background:var(--color-warning-bg)}.parameter-row.fixed{color:var(--color-text-secondary)}.parameter-name{font-weight:500;min-width:150px}.parameter-value{font-family:var(--font-family-mono)}.uncertainty{opacity:.75}.nominal{font-size:var(--font-size-base);color:var(--color-text-secondary)}.warning-text{font-size:var(--font-size-base);color:var(--color-warning-text)}.fit-statistics{margin-top:var(--spacing-md);padding:var(--spacing-md);background:var(--color-bg-subtle);border-radius:var(--radius-md)}.fit-statistics h4{font-size:var(--font-size-base);margin-bottom:var(--spacing-3quarter)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(var(--grid-column-stat-min),1fr));gap:var(--spacing-md)}.stat{display:flex;flex-direction:column}.stat-label{font-size:var(--font-size-xs);color:var(--color-text-secondary);text-transform:uppercase}.stat-value{font-family:var(--font-family-mono);font-weight:500}.assignments-table{margin-top:var(--spacing-lg);margin-bottom:var(--spacing-lg);overflow-x:auto}.assignments-table h3{font-size:var(--font-size-md);margin-bottom:var(--spacing-md)}.assignments-table table{width:100%;border-collapse:collapse;font-size:var(--font-size-base)}.assignments-table th,.assignments-table td{padding:var(--spacing-sm) var(--spacing-md);text-align:left;border-bottom:1px solid var(--color-border-lighter)}.assignments-table th{background:var(--color-bg-muted);font-weight:600;font-size:var(--font-size-sm);text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-secondary)}.assignments-table tr.unassigned{background:var(--color-warning-bg)}.assignments-table tr.low-confidence{background:var(--color-warning-bg-light)}.assignments-table .large-residual{color:var(--color-error);font-weight:500}.unassigned-text{color:var(--color-warning-text);font-style:italic}.confidence-badge{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-pill);font-size:var(--font-size-xs);font-weight:500}.confidence-badge.high{background:var(--color-success-light);color:var(--color-success)}.confidence-badge.medium{background:var(--color-warning-bg-light);color:var(--color-warning)}.confidence-badge.low{background:var(--color-error-light);color:var(--color-error)}.ambiguous-marker{margin-left:var(--spacing-xs);color:var(--color-warning)}.assignments-summary{display:flex;gap:var(--spacing-md);margin-top:var(--spacing-sm);font-size:var(--font-size-base)}.assigned-count{color:var(--color-success)}.unassigned-count{color:var(--color-warning-text)}.low-confidence-count{color:var(--color-warning)}.reference-config-summary{margin-top:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.reference-config-summary h4{font-size:var(--font-size-md);margin-bottom:var(--spacing-md)}.summary-table{width:100%;border-collapse:collapse;font-size:var(--font-size-base)}.summary-table th,.summary-table td{padding:var(--spacing-sm) var(--spacing-md);text-align:left;border-bottom:1px solid var(--color-border-lighter)}.summary-table th{background:var(--color-bg-muted);font-weight:600;font-size:var(--font-size-sm);text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-secondary)}.summary-table.compact th,.summary-table.compact td{padding:var(--spacing-xs) var(--spacing-sm)}.warnings-display{margin-bottom:var(--spacing-lg)}.error-section,.warning-section{padding:var(--spacing-md);border-radius:var(--radius-md);margin-bottom:var(--spacing-sm)}.error-section{background:var(--color-error-bg);border:1px solid var(--color-error-border)}.error-section h4{color:var(--color-error)}.warning-section{background:var(--color-warning-bg);border:1px solid var(--color-warning-border)}.warning-section h4{color:var(--color-warning-text)}.error-section ul,.warning-section ul{margin:var(--spacing-sm) 0 0 var(--spacing-lg);padding:0}.error-item,.warning-item{margin-bottom:var(--spacing-xs)}.citations-section{margin-bottom:var(--spacing-lg);border:1px solid var(--color-border-light);border-radius:var(--radius-md)}.citations-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-3quarter) var(--spacing-md);background:var(--color-bg-muted);border-radius:var(--radius-md) var(--radius-md) 0 0}.citations-header h3{margin:0;font-size:var(--font-size-md)}.expand-button{padding:var(--spacing-xs) var(--spacing-3quarter);font-size:var(--font-size-base)}.citations-content{padding:var(--spacing-md)}.citation-hint{color:var(--color-text-secondary);font-size:var(--font-size-base);margin-bottom:var(--spacing-md)}.citation-list{list-style:none;padding:0;margin:0}.citation-item{padding:var(--spacing-3quarter);background:var(--color-bg-subtle);border-radius:var(--radius-sm);margin-bottom:var(--spacing-sm)}.citation-text{font-size:var(--font-size-base);line-height:1.4}.data-link{display:inline-block;margin-top:var(--spacing-sm);font-size:var(--font-size-xs)}.copy-button{margin-top:var(--spacing-md)}.download-buttons{margin-top:var(--spacing-lg);padding-top:var(--spacing-lg);border-top:1px solid var(--color-border-lighter)}.download-buttons h3{font-size:var(--font-size-md);margin-bottom:var(--spacing-md)}.button-group{display:flex;gap:var(--spacing-3quarter);flex-wrap:wrap}.download-button{padding:var(--spacing-sm) var(--spacing-md)}
