@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500&family=Playfair+Display:ital,wght@0,400;0,600;0,700;0,900;1,400&family=Lora:ital,wght@0,400;0,600;1,400&display=block");:root{--bg:#F9F9F7;--ink:#111111;--muted:#E5E5E0;--red:#CC0000;--neutral-100:#F5F5F5;--neutral-200:#E5E5E5;--neutral-400:#A3A3A3;--neutral-500:#737373;--neutral-600:#525252;--neutral-700:#404040}.sharp-corners{border-radius:0!important}.hard-shadow-hover{transition:box-shadow .2s ease-out,transform .2s ease-out}.hard-shadow-hover:hover{box-shadow:4px 4px 0 0 #111111;transform:translate(-2px,-2px)}.newsprint-texture{position:relative}.newsprint-texture:before{content:"";position:absolute;inset:0;background-image:linear-gradient(0deg,transparent 98%,rgba(0,0,0,.02)),linear-gradient(90deg,transparent 98%,rgba(0,0,0,.02));background-size:3px 3px;pointer-events:none;opacity:.5;z-index:0}*,:after,:before{box-sizing:border-box;margin:0;padding:0}body{font-family:Inter,Helvetica Neue,sans-serif;background-color:var(--bg);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='4' height='4' viewBox='0 0 4 4'%3E%3Cpath fill='%23111111' fill-opacity='0.04' d='M1 3h1v1H1V3zm2-2h1v1H3V1z'%3E%3C/path%3E%3C/svg%3E");color:var(--ink);font-size:15px;line-height:1.6}.app-shell,body{min-height:100vh}.app-shell{display:flex;flex-direction:column}.app-header{background:var(--bg);border-bottom:4px solid var(--ink)}.app-header-inner{max-width:680px;margin:0 auto;padding:0 24px}.masthead-top{display:flex;align-items:center;justify-content:space-between;padding:10px 0 8px;border-bottom:1px solid var(--ink)}.masthead-edition{font-family:JetBrains Mono,Courier New,monospace;font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--neutral-500)}.masthead-edition span{color:var(--red);font-weight:500}.masthead-main{padding:14px 0 12px;display:flex;flex-direction:column;gap:6px;border-bottom:1px solid var(--ink)}.brand{display:flex;align-items:baseline;gap:12px}.brand-name{font-family:Playfair Display,Times New Roman,serif;font-size:36px;font-weight:900;letter-spacing:-.03em;line-height:1;color:var(--ink)}.brand-rule{flex:1 1;height:2px;background:var(--ink)}.brand-tagline{font-family:Lora,Georgia,serif;font-size:13px;font-style:italic;color:var(--neutral-600);letter-spacing:.01em}.masthead-nav{display:flex;align-items:center;gap:0;padding:8px 0 0}.masthead-nav-item{font-family:Inter,sans-serif;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.12em;color:var(--neutral-500);padding-right:16px;margin-right:16px;border-right:1px solid var(--ink)}.masthead-nav-item:last-child{border-right:none;margin-right:0;padding-right:0}.masthead-nav-item.active{color:var(--ink)}.app-main{flex:1 1;padding:40px 24px}.card-stack{max-width:680px;margin:0 auto;display:flex;flex-direction:column;gap:0}.steps{display:flex;align-items:stretch;border:1px solid var(--ink);margin-bottom:24px}.step{display:flex;align-items:center;gap:10px;flex:1 1;font-family:Inter,sans-serif;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--neutral-400);padding:12px 14px;border-right:1px solid var(--ink);background:var(--bg);transition:background .2s}.step:last-child{border-right:none}.step.active{background:var(--ink);color:var(--bg)}.step.completed{color:var(--neutral-600);background:var(--neutral-100)}.step-dot{width:22px;height:22px;border:1.5px solid;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;flex-shrink:0;font-family:JetBrains Mono,monospace}.step.active .step-dot{background:var(--bg);color:var(--ink);border-color:var(--bg)}.step.completed .step-dot{background:var(--ink);color:var(--bg);border-color:var(--ink)}.card{background:var(--bg);border:1px solid var(--ink);padding:32px;display:flex;flex-direction:column;gap:20px}.card-title{font-family:Playfair Display,Times New Roman,serif;font-size:26px;font-weight:700;color:var(--ink);display:flex;align-items:center;gap:12px;letter-spacing:-.02em;line-height:1.1;padding-bottom:16px;border-bottom:1px solid var(--ink)}.card-desc{font-family:Lora,Georgia,serif;color:var(--neutral-600);font-size:14px;line-height:1.65}.count-badge{font-family:JetBrains Mono,monospace;font-size:11px;font-weight:500;background:var(--ink);color:var(--bg);padding:2px 8px;letter-spacing:.05em}.url-textarea{width:100%;padding:14px 16px;border:none;border-bottom:2px solid var(--ink);border-radius:0;font-size:13px;font-family:JetBrains Mono,Courier New,monospace;line-height:1.7;color:var(--ink);background:var(--neutral-100);resize:vertical;outline:none;transition:background .15s}.url-textarea:focus{background:#F0F0EE}.url-textarea::placeholder{color:var(--neutral-400)}.url-list{display:flex;flex-direction:column;gap:0;max-height:320px;overflow-y:auto;border:1px solid var(--ink)}.url-row{display:flex;align-items:center;gap:10px;background:var(--bg);border-bottom:1px solid var(--muted);padding:9px 14px;transition:background .15s}.url-row:last-child{border-bottom:none}.url-row:hover{background:var(--neutral-100)}.url-text{flex:1 1;font-size:12px;font-family:JetBrains Mono,Courier New,monospace;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.remove-btn{background:none;border:1px solid transparent;border-radius:0;color:var(--neutral-400);cursor:pointer;font-size:12px;font-family:JetBrains Mono,monospace;padding:3px 7px;flex-shrink:0;transition:color .15s,border-color .15s,background .15s;min-height:28px;min-width:28px;display:flex;align-items:center;justify-content:center}.remove-btn:hover{color:var(--red);border-color:var(--red);background:#FFF5F5}.progress-track{height:6px;background:var(--muted);overflow:hidden;border:1px solid var(--ink)}.progress-bar{height:100%;background:var(--bg);transition:width .4s ease-out}.progress-label{font-family:JetBrains Mono,monospace;font-size:11px;letter-spacing:.06em;color:var(--neutral-400);text-align:center;text-transform:uppercase}.card--inverted{background:var(--ink);border-color:var(--ink);color:var(--bg)}.card--inverted .card-title{color:var(--bg);border-bottom-color:rgba(249,249,247,.2)}.card--inverted .card-desc{color:var(--neutral-400)}.card--inverted .progress-track{background:rgba(249,249,247,.15);border-color:rgba(249,249,247,.25)}.card--inverted .progress-bar{background:var(--bg)}.card--inverted .progress-label{color:var(--neutral-400)}.download-split{display:grid;grid-template-columns:6fr 4fr;grid-gap:0;gap:0;border:1px solid var(--ink);overflow:hidden}.download-card{display:flex;align-items:flex-start;gap:16px;background:var(--bg);border:none;border-right:1px solid var(--ink);padding:22px 18px;cursor:pointer;text-align:left;transition:box-shadow .2s ease-out,transform .2s ease-out,background .15s;min-width:0;position:relative}.download-card:last-child{border-right:none}.download-card--recommended{background:var(--ink);color:var(--bg)}.download-card--recommended .dl-info strong{color:var(--bg)}.download-card--recommended .dl-info small,.download-card--recommended .dl-info span{color:var(--neutral-400)}.download-card--recommended:hover{background:#1a1a1a;box-shadow:4px 4px 0 0 var(--bg);transform:translate(-2px,-2px);z-index:1}.download-card--alt{background:var(--bg)}.download-card--alt:hover{background:var(--neutral-100);box-shadow:4px 4px 0 0 var(--ink);transform:translate(-2px,-2px);z-index:1}.dl-icon{font-size:24px;line-height:1;flex-shrink:0;margin-top:2px}.dl-info{display:flex;flex-direction:column;gap:4px}.dl-title-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.dl-info strong{font-family:Playfair Display,serif;font-size:16px;font-weight:700;color:var(--ink);letter-spacing:-.01em}.rec-badge{font-family:Inter,sans-serif;font-size:9px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--bg);background:var(--red);padding:2px 7px}.download-card--recommended .rec-badge{background:var(--bg);color:var(--red)}.dl-info span{font-size:11px;font-family:JetBrains Mono,monospace;color:var(--neutral-500);letter-spacing:.02em}.dl-info small{font-family:Lora,Georgia,serif;font-size:12px;color:var(--neutral-500);line-height:1.55;margin-top:2px}.dl-download-hint{font-family:JetBrains Mono,monospace;font-size:10px;color:var(--neutral-400);letter-spacing:.05em;margin-top:6px}.actions{display:flex;gap:10px;justify-content:flex-end;padding-top:4px}.btn-primary{background:var(--ink);color:var(--bg);border:1px solid var(--ink);border-radius:0;padding:11px 24px;font-family:Inter,sans-serif;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;transition:background .2s,color .2s;min-height:44px}.btn-primary:hover:not(:disabled){background:var(--bg);color:var(--ink)}.btn-primary:disabled{opacity:.35;cursor:not-allowed}.btn-ghost{background:transparent;color:var(--ink);border:1px solid var(--ink);border-radius:0;padding:11px 22px;font-family:Inter,sans-serif;font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:background .2s,color .2s;min-height:44px}.btn-ghost:hover{background:var(--ink);color:var(--bg)}.feedback{font-family:Lora,Georgia,serif;font-size:13px;font-style:italic;color:var(--neutral-600);padding:12px 16px;background:var(--neutral-100);border-left:3px solid var(--ink)}.feedback.error{color:var(--red);background:#FFF5F5;border-left-color:var(--red)}.app-footer{border-top:4px solid var(--ink);padding:16px 24px;text-align:center}.app-footer-inner{max-width:680px;margin:0 auto;font-family:JetBrains Mono,monospace;font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--neutral-400)}.input-section{display:flex;flex-direction:column;gap:10px}.input-section-label{font-family:Inter,sans-serif;font-weight:700;letter-spacing:.12em;color:var(--neutral-500)}.input-divider,.input-section-label{font-size:10px;text-transform:uppercase}.input-divider{display:flex;align-items:center;gap:14px;font-family:JetBrains Mono,monospace;letter-spacing:.1em;color:var(--neutral-400)}.input-divider:after,.input-divider:before{content:"";flex:1 1;height:1px;background:var(--muted)}.upload-zone{border:1px dashed var(--neutral-700);padding:28px 20px;cursor:pointer;background:var(--neutral-100);text-align:center;display:flex;flex-direction:column;align-items:center;gap:6px;transition:background .15s,border-color .15s;-webkit-user-select:none;-moz-user-select:none;user-select:none}.upload-zone--drag,.upload-zone:hover{background:#EDEDEB;border-color:var(--ink)}.upload-zone-icon{font-family:JetBrains Mono,monospace;font-size:20px;line-height:1;color:var(--neutral-500)}.upload-zone-text{font-family:Inter,sans-serif;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--neutral-600)}.upload-zone-types{font-family:JetBrains Mono,monospace;font-size:10px;letter-spacing:.08em;color:var(--neutral-400)}.file-list{border:1px solid var(--ink);display:flex;flex-direction:column}.file-item{display:flex;align-items:center;gap:10px;padding:8px 12px;border-bottom:1px solid var(--muted);background:var(--bg);transition:background .15s}.file-item:last-child{border-bottom:none}.file-item:hover{background:var(--neutral-100)}.file-badge{font-size:9px;font-weight:500;text-transform:uppercase;letter-spacing:.06em;background:var(--ink);color:var(--bg);padding:2px 6px;flex-shrink:0}.file-badge,.file-name{font-family:JetBrains Mono,monospace}.file-name{flex:1 1;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink)}.file-chars{font-size:10px;font-family:JetBrains Mono,monospace;color:var(--neutral-400);flex-shrink:0;letter-spacing:.04em}.review-section-label{font-family:Inter,sans-serif;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--neutral-500);padding-top:4px}@media (max-width:600px){.brand-name{font-size:26px}.card{padding:20px}.card-title{font-size:22px}.download-grid{grid-template-columns:1fr}.download-card{border-right:none;border-bottom:1px solid var(--ink)}.download-card:last-child{border-bottom:none}.step span{display:none}.actions{flex-direction:column}.btn-ghost,.btn-primary{width:100%;text-align:center;justify-content:center}}