.decoder-page{min-height:calc(100vh - 64px);background:var(--color-bg-page);color:var(--color-text-primary);padding:clamp(28px,4vw,56px) 20px 72px}.decoder-workbench{max-width:1120px;margin:0 auto;display:grid;grid-template-columns:minmax(260px,.8fr) minmax(320px,1.2fr);gap:clamp(24px,4vw,44px);align-items:start}.decoder-copy{position:sticky;top:92px;padding-top:10px}.decoder-kicker,.result-kicker{margin:0 0 8px;color:var(--color-interactive-hover);font-size:var(--text-xs);font-weight:var(--font-bold);letter-spacing:.08em;text-transform:uppercase}.decoder-page h1{margin:0;font-family:var(--font-serif),Georgia,serif;font-size:clamp(2.25rem,5vw,4.5rem);line-height:.98;letter-spacing:0;color:var(--color-primary-900)}.decoder-copy p:not(.decoder-kicker){max-width:520px;margin:18px 0 0;color:var(--color-text-secondary);font-size:var(--text-md);line-height:1.55}.decoder-secondary-link{display:inline-flex;width:fit-content;margin-top:18px;border-bottom:1px solid;color:var(--color-interactive-hover);font-size:var(--text-sm);font-weight:var(--font-semibold);line-height:1.4;text-decoration:none}.decoder-secondary-link:hover{color:var(--color-interactive)}.decoder-form,.decoder-loading,.decoder-result-section,.decoder-warnings{border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg);background:var(--color-bg-elevated);box-shadow:var(--shadow-sm)}.decoder-form{display:grid;gap:16px;padding:18px}.decoder-auth{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--color-accent-indigo-200);border-radius:var(--radius-md);background:var(--color-accent-indigo-50);padding:12px}.decoder-auth div{display:grid;gap:2px}.decoder-auth span,.decoder-submit-block span,.empty-note,.file-name{color:var(--color-text-muted);font-size:var(--text-sm)}.decoder-controls{display:grid;grid-template-columns:minmax(0,1fr) 180px;gap:12px}.decoder-form label{display:grid;gap:6px;font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--color-text-secondary)}.decoder-form input,.decoder-form select,.decoder-form textarea{width:100%;border:1px solid var(--color-border-default);border-radius:var(--radius-md);background:var(--color-bg-card);color:var(--color-text-primary);font:inherit;padding:10px 12px;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}.decoder-form textarea{min-height:330px;resize:vertical;line-height:1.55}.decoder-form input:focus,.decoder-form select:focus,.decoder-form textarea:focus{border-color:var(--color-interactive);outline:2px solid var(--color-accent-indigo-100);outline-offset:1px;box-shadow:0 0 0 1px var(--color-accent-indigo-200)}.decoder-actions,.decoder-textarea-header,.field-result,.framework-item__header{display:flex;align-items:center;justify-content:space-between;gap:12px}.decoder-textarea-header label{display:block}.decoder-textarea-header span{color:var(--color-text-muted);font-size:var(--text-xs)}.decoder-actions{align-items:flex-end;flex-wrap:wrap}.decoder-actions input[type=file]{display:none}.decoder-submit-block{margin-left:auto;display:flex;align-items:center;gap:12px}.decoder-page :is(.decoder-form,.decoder-loading) button,.field-result a,.framework-item a{border:0;border-radius:var(--radius-md);background:var(--color-interactive);color:var(--color-text-inverse);cursor:pointer;font-size:var(--text-sm);font-weight:var(--font-semibold);line-height:1.3;padding:10px 14px;text-decoration:none;transition:background .16s ease,border-color .16s ease,color .16s ease,transform .16s ease}.decoder-page :is(.decoder-form,.decoder-loading) button:hover:not(:disabled),.field-result a:hover{background:var(--color-interactive-hover);transform:translateY(-1px)}.decoder-page .secondary-action:hover:not(:disabled){background:var(--color-bg-muted);color:var(--color-primary-900)}.decoder-page :is(.decoder-form,.decoder-loading) button:disabled{cursor:not-allowed;opacity:.55}.secondary-action{border:1px solid var(--color-border-default);background:var(--color-bg-card);color:var(--color-text-primary)}.decoder-error{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0;border:1px solid var(--color-error);border-radius:var(--radius-md);background:var(--color-accent-rose-50);color:var(--color-tone-text-error);padding:10px 12px;font-size:var(--text-sm)}.decoder-error p{margin:0}.decoder-loading,.decoder-results{max-width:1040px;margin:28px auto 0}.decoder-loading{display:grid;gap:14px;padding:18px}.decoder-loading h2,.decoder-result-section h2{margin:0;color:var(--color-primary-900);font-size:var(--text-xl);letter-spacing:0}.decoder-loading p{margin:0;color:var(--color-text-secondary)}.decoder-loading__header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.decoder-loading__header .result-kicker{margin-bottom:6px}.decoder-loading__header span{color:var(--color-text-secondary);flex:0 0 auto;font-size:var(--text-sm);font-weight:var(--font-semibold);padding:5px 9px}.decoder-loading__header span,.decoder-progress-bar{border-radius:var(--radius-full);background:var(--color-bg-muted)}.decoder-progress-bar{height:8px;overflow:hidden}.decoder-progress-bar span{display:block;height:100%;border-radius:inherit;background:var(--color-interactive);transition:width .45s ease}.decoder-loading__active{font-size:var(--text-md)}.decoder-progress-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;margin:0;padding:0;list-style:none}.decoder-progress-steps li{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);background:var(--color-bg-card);padding:12px}.decoder-progress-steps li>span{align-self:start;border-radius:var(--radius-full);background:var(--color-bg-muted);color:var(--color-text-muted);font-size:var(--text-xs);font-weight:var(--font-semibold);min-width:42px;padding:4px 7px;text-align:center}.decoder-progress-steps strong{display:block;color:var(--color-primary-900);font-size:var(--text-sm);line-height:1.3}.decoder-progress-steps p{margin-top:4px;font-size:var(--text-sm);line-height:1.4}.decoder-progress-steps .is-active{border-color:var(--color-accent-indigo-200);background:var(--color-accent-indigo-50)}.decoder-progress-steps .is-active>span{background:var(--color-interactive);color:var(--color-text-inverse)}.decoder-progress-steps .is-complete>span{background:var(--color-accent-emerald-50);color:var(--color-tone-text-success)}.decoder-loading__note{font-size:var(--text-sm)}.decoder-game-option{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);background:var(--color-bg-card);padding:12px}.decoder-game-option div{display:grid;gap:3px}.decoder-game-option strong{color:var(--color-primary-900);font-size:var(--text-sm)}.decoder-game-option p{font-size:var(--text-sm)}.decoder-game-panel{border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg);background:var(--color-bg-page);overflow:hidden;padding:14px}.decoder-results{display:grid;gap:18px}.decoder-result-section{overflow:hidden;padding:0}.decoder-result-section h2{border-bottom:1px solid var(--color-border-subtle);background:var(--color-primary-50);padding:15px 20px;font-size:var(--text-lg)}.decoder-result-section>:not(h2){padding:18px 20px 20px}.field-result h3,.framework-item h3{margin:0;color:var(--color-primary-900);font-size:var(--text-md);letter-spacing:0}.concept-item h3,.term-list strong{margin:0;color:var(--color-primary-900);font-size:var(--text-sm);font-weight:var(--font-semibold);letter-spacing:0;line-height:1.35}.concept-item p,.critique-summary p,.field-result p,.framework-item p{margin:6px 0 0;color:var(--color-text-secondary);line-height:1.55}.atlas-fit,.critical-lens,.reader-guidance,.reading-brief{display:grid;gap:18px}.brief-primary{border:1px solid var(--color-border-subtle);border-left:4px solid var(--color-interactive);border-radius:var(--radius-md);background:var(--color-bg-card);box-shadow:var(--shadow-xs);padding:16px}.brief-primary .result-kicker{margin-bottom:10px}.brief-primary h3{max-width:820px;font-size:var(--text-xl);line-height:1.35}.brief-primary p{max-width:860px}.field-result{border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);background:var(--color-primary-50);padding:14px}.brief-grid h3,.critique-summary h3{margin:0;color:var(--color-primary-900);font-size:var(--text-lg);letter-spacing:0}.brief-grid p,.brief-primary p{margin:8px 0 0;color:var(--color-text-secondary);line-height:1.6}.brief-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}.brief-grid article,.critique-summary{border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);background:var(--color-bg-card);padding:14px}.numbered-list{counter-reset:reading-step;display:grid;gap:8px;list-style:none;margin:0;padding:0;color:var(--color-text-secondary)}.numbered-list li{counter-increment:reading-step;display:grid;grid-template-columns:28px minmax(0,1fr);gap:10px;margin:0;line-height:1.5}.numbered-list li:before{content:counter(reading-step);display:grid;place-items:center;align-self:start;width:24px;height:24px;border:1px solid var(--color-border-subtle);border-radius:var(--radius-full);background:var(--color-bg-card);color:var(--color-text-muted);font-size:var(--text-xs);font-weight:var(--font-semibold);line-height:1}.concept-list,.term-list{display:grid;gap:10px;margin:0;padding:0;list-style:none}.term-list li{border-top:1px solid var(--color-border-subtle);padding:10px 0 0}.term-list li:first-child{border-top:0;padding-top:0}.term-list p{margin:0;color:var(--color-text-secondary);line-height:1.5}.framework-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}.proposed-framework{display:grid;gap:12px;border:1px solid var(--color-accent-indigo-200);border-left:4px solid var(--color-interactive);border-radius:var(--radius-md);background:var(--color-accent-indigo-50);padding:16px}.proposed-framework h3,.subsection-title{margin:0;color:var(--color-primary-900);font-size:var(--text-lg);letter-spacing:0}.proposed-framework p,.proposed-framework ul{margin:0;color:var(--color-text-secondary);line-height:1.55}.concept-item,.framework-item{border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);padding:12px;background:var(--color-bg-card)}.framework-item{display:grid;align-content:space-between;gap:10px;min-height:108px;box-shadow:var(--shadow-xs)}.framework-item__header{align-items:flex-start}.framework-item__header span,.plain-list strong,.tag-row li{border-radius:var(--radius-full);background:var(--color-accent-indigo-50);color:var(--color-interactive-hover);font-size:var(--text-xs);font-weight:var(--font-semibold);padding:4px 8px;text-transform:capitalize}.plain-list{display:grid;gap:8px;margin:0;padding:0;list-style:none;color:var(--color-text-secondary)}.plain-list li{border-top:1px solid var(--color-border-subtle);display:grid;gap:6px;margin:0;padding-top:10px;line-height:1.45}.plain-list li:first-child{border-top:0;padding-top:0}.plain-list strong{width:fit-content}.framework-item a{display:inline-flex;width:fit-content;margin-top:0;background:transparent;color:var(--color-interactive-hover);padding:0}.framework-item a:hover{background:transparent;color:var(--color-interactive);text-decoration:underline;transform:none}.tag-row{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 0;padding:0;list-style:none}.concept-item{display:grid;gap:8px;border-left:3px solid var(--color-primary-300)}.concept-item--missing{border-left-color:var(--color-accent-amber-500);background:var(--color-accent-amber-50)}.prerequisite-groups{display:grid;gap:18px}.subsection-title{margin-bottom:10px;font-size:var(--text-md)}.list-more-note{margin:10px 0 0;color:var(--color-text-muted);font-size:var(--text-sm)}.decoder-warnings{display:grid;gap:8px;border-left:4px solid var(--color-accent-amber-500);padding:13px 16px;background:var(--color-tone-bg-warning);border-color:var(--color-tone-border-warning)}.decoder-warnings p{margin:0;color:var(--color-tone-text-warning-strong);font-size:var(--text-sm)}.paperguide-examples{max-width:1120px;margin:36px auto 0}.paperguide-examples__header{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:16px}.paperguide-examples__header h2{margin:0;color:var(--color-primary-900);font-family:var(--font-serif),Georgia,serif;font-size:clamp(1.8rem,3vw,2.5rem);line-height:1.08;letter-spacing:0}.paperguide-examples__header p:not(.decoder-kicker){max-width:520px;margin:0;color:var(--color-text-secondary);line-height:1.55}.paperguide-example-browser{display:grid;grid-template-columns:minmax(230px,.34fr) minmax(0,1fr);gap:16px;align-items:start}.paperguide-example-selector{display:grid;gap:8px}.paperguide-example-tab{width:100%;border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);background:var(--color-bg-elevated);color:var(--color-text-primary);cursor:pointer;display:grid;gap:5px;padding:11px 12px;text-align:left;transition:border-color .16s ease,background .16s ease,transform .16s ease}.paperguide-example-tab.is-selected,.paperguide-example-tab:hover{border-color:var(--color-accent-indigo-200);background:var(--color-accent-indigo-50)}.paperguide-example-tab:hover{transform:translateY(-1px)}.paperguide-example-preview__header span,.paperguide-example-proposed span,.paperguide-example-route span,.paperguide-example-tab span{color:var(--color-text-muted);font-size:var(--text-xs);font-weight:var(--font-semibold);line-height:1.35;text-transform:uppercase}.paperguide-example-tab strong{color:var(--color-primary-900);font-size:var(--text-sm);line-height:1.32}.paperguide-example-tab small{color:var(--color-text-secondary);font-size:var(--text-xs);line-height:1.35}.paperguide-example-preview{border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg);background:var(--color-bg-elevated);box-shadow:var(--shadow-sm);display:grid;gap:16px;padding:18px}.paperguide-example-preview__header{display:flex;align-items:start;justify-content:space-between;gap:16px}.paperguide-example-preview__header h3{margin:4px 0 0;color:var(--color-primary-900);font-size:var(--text-xl);letter-spacing:0;line-height:1.22}.paperguide-example-load{border:0;border-radius:var(--radius-md);background:var(--color-interactive);color:var(--color-text-inverse);cursor:pointer;flex:0 0 auto;font-size:var(--text-sm);font-weight:var(--font-semibold);line-height:1.3;padding:10px 14px;transition:background .16s ease,transform .16s ease}.paperguide-example-load:hover{background:var(--color-interactive-hover);transform:translateY(-1px)}.paperguide-example-route{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.paperguide-example-grid section,.paperguide-example-input,.paperguide-example-route div{border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);background:var(--color-bg-card);padding:12px}.paperguide-example-route strong{display:block;margin-top:4px;color:var(--color-primary-900);font-size:var(--text-sm);line-height:1.35}.paperguide-example-route a{color:inherit;text-decoration:none}.paperguide-example-route a:hover{color:var(--color-interactive-hover);text-decoration:underline}.paperguide-example-brief,.paperguide-example-proposed{border:1px solid var(--color-border-subtle);border-left:4px solid var(--color-interactive);border-radius:var(--radius-md);background:var(--color-bg-card);padding:15px}.paperguide-example-brief h4{margin:0;color:var(--color-primary-900);font-size:var(--text-lg);letter-spacing:0;line-height:1.35}.paperguide-example-brief p:not(.result-kicker),.paperguide-example-grid p,.paperguide-example-input p,.paperguide-example-proposed p{margin:8px 0 0;color:var(--color-text-secondary);line-height:1.55}.paperguide-example-proposed{display:grid;gap:6px;border-color:var(--color-accent-emerald-200);border-left-color:var(--color-accent-emerald-500);background:var(--color-accent-emerald-50)}.paperguide-example-proposed strong{color:var(--color-primary-900);font-size:var(--text-md);line-height:1.35}.paperguide-example-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.paperguide-example-grid h4{margin:0 0 10px;color:var(--color-primary-900);font-size:var(--text-sm);letter-spacing:0}.paperguide-example-chip-list,.paperguide-example-text-list{display:grid;gap:8px;margin:0;padding:0;list-style:none}.paperguide-example-chip-list li{display:flex;align-items:center;justify-content:space-between;gap:8px;border-top:1px solid var(--color-border-subtle);padding-top:8px}.paperguide-example-chip-list li:first-child{border-top:0;padding-top:0}.paperguide-example-chip-list strong{color:var(--color-primary-900);font-size:var(--text-sm);line-height:1.35}.paperguide-example-chip-list span{border-radius:var(--radius-full);background:var(--color-accent-indigo-50);color:var(--color-interactive-hover);flex:0 0 auto;font-size:var(--text-xs);font-weight:var(--font-semibold);padding:4px 8px;text-transform:capitalize}.paperguide-example-text-list li{border-top:1px solid var(--color-border-subtle);color:var(--color-text-secondary);font-size:var(--text-sm);line-height:1.45;padding-top:8px}.paperguide-example-text-list li:first-child{border-top:0;padding-top:0}.paperguide-example-input summary{color:var(--color-primary-900);cursor:pointer;font-size:var(--text-sm);font-weight:var(--font-semibold)}.paperguide-example-input p{max-height:260px;overflow:auto;white-space:pre-wrap}@media (max-width:820px){.decoder-workbench{grid-template-columns:1fr}.decoder-copy{position:static}.decoder-controls{grid-template-columns:1fr}.decoder-actions,.decoder-error,.decoder-game-option,.decoder-submit-block,.field-result{align-items:stretch;flex-direction:column}.decoder-submit-block{margin-left:0}.decoder-page :is(.decoder-form,.decoder-loading) button,.field-result a{width:100%;text-align:center}.paperguide-example-preview__header,.paperguide-examples__header{align-items:stretch;flex-direction:column}.paperguide-example-browser,.paperguide-example-grid,.paperguide-example-route,.paperguide-example-selector{grid-template-columns:1fr}.paperguide-example-load{width:100%}}