.app-main{padding:48px 0 96px;min-height:70vh}.app-nav{gap:20px}.app-email{font-size:14px;color:var(--muted)}.app-head h1,.signin h1{font-size:clamp(30px,3.4vw,40px);letter-spacing:-.03em}.app-head p{margin-top:8px}.app-section{margin-top:48px}.app-section h2{font-size:22px;letter-spacing:-.015em;margin-bottom:14px}.signin{max-width:420px;margin:40px auto}.signin form{margin-top:24px;display:grid;gap:10px}.signin label,.upload label{font-weight:600;font-size:15px;color:var(--ink)}input[type=email]{width:100%;min-height:48px;padding:0 14px;border:1px solid var(--line-strong);border-radius:var(--r);font:16px var(--sans);color:var(--ink);background:#fff}input[type=email]:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:var(--accent)}.signin .fine,.upload .fine{font-size:13px;color:var(--muted)}.signin .fine{margin-top:20px}.form-error{min-height:1em;font-size:14px;color:var(--cut)}.notice{margin:16px 0;padding:14px 16px;border:1px solid var(--line-strong);border-radius:var(--r);background:var(--tint);font-size:15px}.notice.good{border-color:#c9c8f6;background:var(--accent-tint)}.notice.bad{border-color:#f0c9c6;background:var(--cut-tint);color:var(--cut)}.upload{margin-top:32px;padding:24px;border:1px solid var(--line-strong);border-radius:10px;background:#fff}.drop{position:relative;display:grid;justify-items:center;gap:6px;padding:36px 20px;border:1.5px dashed var(--line-strong);border-radius:10px;background:var(--tint);text-align:center;cursor:pointer;transition:border-color .15s,background .15s}.drop:hover,.drop.over{border-color:var(--accent);background:var(--accent-tint)}.drop:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:2px}.drop input{position:absolute;inset:0;opacity:0;cursor:pointer}.drop b{font-size:17px;color:var(--ink)}.drop span{font-size:14px;color:var(--muted);font-weight:400}.drop a{position:relative;z-index:1}.drop.locked,.drop.locked:hover{border-color:var(--line-strong);background:var(--tint);cursor:not-allowed}.drop.locked input{cursor:not-allowed}.drop.locked b{color:var(--muted)}.checking{margin-top:16px}.file-check{list-style:none;margin:20px 0 0;padding:0;border-top:1px solid var(--line)}.file-check li{display:grid;grid-template-columns:22px minmax(0,260px) minmax(0,1fr);gap:10px;align-items:baseline;padding:10px 0;border-bottom:1px solid var(--line);font-size:15px}.file-check li>span:last-child{font-size:14px;color:var(--muted);overflow-wrap:anywhere}.file-check .mark{width:16px;height:16px;border-radius:50%;align-self:center;position:relative}.file-check .ok .mark{background:var(--accent)}.file-check .ok .mark:after{content:"";position:absolute;left:5px;top:2px;width:4px;height:8px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}.file-check .missing .mark{border:1.5px dashed var(--line-strong)}.file-check .bad .mark{background:var(--cut)}.file-check .bad>span:last-child{color:var(--cut)}.preview-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:20px}.preview-stats b{display:block;font:500 24px/1.2 var(--mono);color:var(--ink)}.preview-stats span{font-size:14px;color:var(--muted)}.statuses{margin-top:28px}.statuses h3{font-size:17px}.statuses .fine{margin:4px 0 10px}.status-table{font-size:14px}.status-table td{vertical-align:middle}.status-table select{min-height:36px;padding:0 30px 0 10px;border:1px solid var(--line-strong);border-radius:6px;background:#fff;font:14px var(--sans);color:var(--ink);cursor:pointer}.status-table select:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.upload-foot{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-top:22px}.upload-foot .fine{max-width:560px;margin:0}.upload-foot .btn:disabled{opacity:.45;cursor:not-allowed}.list{border-top:1px solid var(--ink)}.list-row{display:grid;grid-template-columns:140px 120px minmax(0,1fr) auto;gap:16px;align-items:center;padding:14px 0;border-bottom:1px solid var(--line);font-size:15px}.empty{padding:18px 0;border-top:1px solid var(--line)}.back{display:inline-block;margin-bottom:20px;font-size:14px;text-decoration:none;color:var(--muted)}.back:hover{color:var(--ink)}.admin-checks{max-width:960px;margin:0 auto 20px;padding:14px 16px;border:1px solid var(--line-strong);border-radius:var(--r);background:var(--tint);font-size:14px;display:grid;gap:6px}.neg-note{margin-top:12px;font-size:13px;color:var(--muted)}.neg-note .neg{margin:0 4px 0 0}.toggle{display:flex;align-items:center;gap:10px;font-size:15px;cursor:pointer}.toggle input{flex:none;margin:0;width:18px;height:18px;accent-color:var(--accent)}.upload .toggle{margin-bottom:16px;font-weight:400}.admin-table{min-width:760px;font-size:14px}.admin-table th.num,.admin-table td.num{font-size:13px}.actions{white-space:nowrap}.actions>*+*{margin-left:12px}button.link{padding:0;border:0;background:none;font:inherit;color:var(--ink);text-decoration:underline;text-decoration-color:var(--line-strong);text-underline-offset:4px;cursor:pointer}button.link.danger{color:var(--cut)}.inline-form{display:flex;flex-wrap:wrap;gap:10px;max-width:640px}.inline-form input{flex:1 1 240px}.app-section .fine{margin:10px 0 16px;font-size:13px;color:var(--muted)}@media(max-width:960px){.app-nav a:not(.btn){display:inline}.app-email{display:none}.preview-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.file-check li{grid-template-columns:22px minmax(0,1fr)}.file-check li>span:last-child{grid-column:2}.list-row{grid-template-columns:minmax(0,1fr) auto;row-gap:4px}}.apply{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-top:24px;padding:16px 18px;border:1px solid var(--line-strong);border-radius:8px;background:var(--tint)}.apply-text{display:grid;gap:4px;max-width:560px}.apply-text small{font-size:13px;color:var(--muted)}.apply-actions{display:flex;flex-wrap:wrap;gap:8px}.report-bar{max-width:960px;margin:0 auto 16px;display:flex;justify-content:space-between;align-items:center;gap:12px}.report-bar .back{margin-bottom:0}@media print{@page{margin:14mm}body{background:#fff}.site-header,.site-footer,.report-bar,.admin-checks,.apply-actions{display:none!important}.app-main{padding:0;min-height:0}.app-main .wrap{max-width:none;padding:0}.sheet{max-width:none;border:0;box-shadow:none}.sheet,.sheet *{-webkit-print-color-adjust:exact;print-color-adjust:exact}.sec{padding:22px 0;break-inside:auto}.sheet-top,.basis,.sheet-foot{padding-left:0;padding-right:0}.chg,.ktable tr,.reason,.rules>div,.stats{break-inside:avoid}.sec h2{break-after:avoid}.table-wrap{overflow:visible}.ktable{min-width:0;font-size:12px}}.progress-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:20px;padding-bottom:6px}.progress-stats b{display:block;font:500 24px/1.2 var(--mono);color:var(--ink)}.progress-stats span{font-size:14px;color:var(--muted)}@media(max-width:560px){.progress-stats{grid-template-columns:minmax(0,1fr)}}@media(max-width:480px){.app-body .site-header .wrap{gap:12px}.app-body .logo img{height:22px;width:auto}.app-nav{gap:12px;font-size:14px}}
