:root{color-scheme:light;--paper:#f1f0ec;--surface:#fff;--ink:#151515;--muted:#6d6b65;--line:#d9d7d0;--accent:#1e4f43;--soft:#e7ece9}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.55 -apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC",sans-serif}.site-head{position:sticky;top:0;z-index:20;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;min-height:72px;padding:0 28px;border-bottom:1px solid var(--line);background:rgba(241,240,236,.94);backdrop-filter:blur(16px)}.wordmark{color:var(--ink);font-size:13px;font-weight:750;letter-spacing:.16em;text-decoration:none}.head-copy{text-align:center}.head-copy strong,.head-copy span{display:block}.head-copy strong{font:400 16px/1.3 Georgia,"Songti SC",serif}.head-copy span{color:var(--muted);font-size:10px;letter-spacing:.08em}.site-head>button{justify-self:end}main{max-width:1440px;margin:auto;padding:44px 32px 100px}.eyebrow{margin:0 0 10px;color:var(--muted);font-size:11px;font-weight:700;letter-spacing:.16em}.login-shell{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.65fr);gap:12vw;align-items:center;min-height:calc(100vh - 180px);max-width:1160px;margin:auto}.intro h1,.portal-intro h1{max-width:780px;margin:0;font:400 clamp(36px,5vw,72px)/1.05 Georgia,"Songti SC",serif;letter-spacing:-.025em}.intro>p:last-child{max-width:620px;margin-top:30px;color:var(--muted);font-size:17px}.login-card{padding:28px;border:1px solid var(--line);background:var(--surface)}.login-card>div{display:grid;gap:14px}.login-card button{width:100%}label{display:grid;gap:7px;color:var(--muted);font-size:13px}input,textarea,select{width:100%;border:1px solid var(--line);border-radius:0;padding:12px 13px;color:var(--ink);background:#fff;font:inherit;outline:none}input:focus,textarea:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 2px #1e4f4320}textarea{min-height:112px;resize:vertical}button{min-height:44px;border:1px solid var(--accent);border-radius:0;padding:0 18px;color:#fff;background:var(--accent);font:inherit;font-weight:650;cursor:pointer}button:disabled{cursor:wait;opacity:.55}.text-button,.back-button{min-height:auto;border:0;padding:7px 0;color:var(--ink);background:transparent}.status{min-height:24px;margin:12px 0 0;color:var(--muted)}.status.error{color:#a12922}.status.ok{color:var(--accent)}.portal-intro{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:44px}.portal-intro>p{max-width:320px;color:var(--muted);text-align:right}.work-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 20px}.work-card{display:grid;grid-template-rows:380px auto;border:0;padding:0;text-align:left;color:var(--ink);background:transparent}.work-image{display:flex;align-items:center;justify-content:center;overflow:hidden;background:#e6e4dd}.work-image img{width:100%;height:100%;object-fit:contain}.work-copy{padding-top:14px}.work-copy h2{margin:0;font:400 22px/1.15 Georgia,"Songti SC",serif}.work-copy p{margin:5px 0 0;color:var(--muted);font-size:13px}.back-button{margin-bottom:24px}.active-work{display:grid;grid-template-columns:180px 1fr;gap:26px;align-items:center;margin-bottom:36px;padding-bottom:28px;border-bottom:1px solid var(--line)}.active-work img{width:180px;height:145px;object-fit:contain;background:#e6e4dd}.active-work h1{margin:0 0 7px;font:400 34px/1.1 Georgia,"Songti SC",serif}.active-work p{margin:0;color:var(--muted)}.record-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:56px}.record-form{display:grid;gap:16px}.form-head{margin-bottom:8px}.form-head h2,.history-panel h2{margin:0;font:400 28px/1.15 Georgia,"Songti SC",serif}.form-head>p:last-child,.history-panel>p{color:var(--muted)}.form-section{display:grid;gap:14px;padding:24px;border:1px solid var(--line);background:var(--surface)}.form-section h3{margin:0;font-size:15px}.two-columns{grid-template-columns:1fr 1fr}.two-columns h3,.two-columns .wide{grid-column:1/-1}.choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.choice{display:flex;align-items:flex-start;gap:9px;padding:12px;border:1px solid var(--line);color:var(--ink)}.choice input{width:auto;margin-top:4px}.choice strong,.choice small{display:block}.choice small{margin-top:2px;color:var(--muted)}.inline-choices{display:flex;flex-wrap:wrap;gap:18px}.inline-choices label{display:flex;grid-template-columns:auto 1fr;align-items:center;gap:6px;color:var(--ink)}.inline-choices input{width:auto}.work-prompt{margin:0;padding:12px;border-left:3px solid var(--accent);color:var(--accent);background:var(--soft)}.file-drop{place-items:center;padding:24px;border:1px dashed #aaa;color:var(--ink);cursor:pointer}.file-drop input{position:absolute;width:1px;height:1px;opacity:0}.upload-list{display:grid;gap:7px}.upload-item{display:flex;justify-content:space-between;gap:16px;padding:9px 11px;background:var(--soft);font-size:12px}.submit-bar{position:sticky;bottom:0;z-index:10;display:flex;align-items:center;gap:16px;padding:14px 0;background:linear-gradient(transparent,var(--paper) 18%,var(--paper))}.submit-bar .status{margin:0}.history-panel{position:sticky;top:104px;align-self:start}.history-item{margin-top:18px;padding-top:18px;border-top:1px solid var(--line)}.history-item h3{margin:0 0 6px;font:400 18px/1.2 Georgia,"Songti SC",serif}.history-item p{margin:4px 0;color:var(--muted);font-size:13px}.history-status{display:inline-block;margin-top:8px;padding:3px 8px;background:var(--soft);color:var(--accent);font-size:11px}.empty{padding:30px 0;color:var(--muted)}@media(max-width:900px){.site-head{grid-template-columns:1fr auto;padding:0 16px}.head-copy{display:none}main{padding:28px 16px 80px}.login-shell{grid-template-columns:1fr;gap:40px}.work-grid{grid-template-columns:1fr 1fr}.work-card{grid-template-rows:260px auto}.record-layout{grid-template-columns:1fr}.history-panel{position:static}.active-work{grid-template-columns:110px 1fr}.active-work img{width:110px;height:100px}}@media(max-width:560px){.intro h1,.portal-intro h1{font-size:38px}.portal-intro{display:block}.portal-intro>p{text-align:left}.work-grid{grid-template-columns:1fr}.work-card{grid-template-rows:340px auto}.two-columns,.choice-grid{grid-template-columns:1fr}.two-columns h3,.two-columns .wide{grid-column:1}.form-section{padding:18px}.active-work h1{font-size:26px}}
