:root{color:#17201d;font-synthesis:none;background:#f3f1ec;font-family:Inter,Noto Sans JP,system-ui,sans-serif}*{box-sizing:border-box}body{min-width:320px;margin:0}button,input,select{font:inherit}.app-shell{min-height:100vh}.topbar{color:#fff;background:#182d28;justify-content:space-between;align-items:center;height:68px;padding:0 5vw;display:flex}.topbar>div{align-items:center;gap:12px;display:flex}.brand-mark{color:#182d28;background:#d6a75d;border-radius:9px;place-items:center;width:34px;height:34px;font-weight:900;display:grid}.admin-chip,.count{color:#41534c;background:#e8eee9;border-radius:999px;padding:7px 11px;font-size:12px;font-weight:800}.topbar .admin-chip{color:#fff;background:0 0;border:1px solid #5b716b}main{width:min(1120px,92vw);margin:0 auto;padding:42px 0 72px}.hero{margin-bottom:26px}.hero h1{letter-spacing:-.04em;margin:4px 0 8px;font-size:clamp(30px,4vw,46px)}.hero p{color:#67746f;margin:0}.eyebrow,.section-kicker{letter-spacing:.16em;font-size:11px;font-weight:900;color:#9b6a2b!important}.dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.panel{background:#fff;border:1px solid #dfe3df;border-radius:18px;padding:22px;box-shadow:0 15px 35px #1c2d270d}.panel.wide{grid-column:1/-1;margin-bottom:18px}.dashboard-grid .panel.wide{margin-bottom:0}.panel-heading{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.panel-heading h2,.panel-heading p{margin:0}.panel-heading h2{margin-top:4px;font-size:20px}.form-stack{gap:13px;display:grid}.form-inline{border-bottom:1px solid #e8ece9;grid-template-columns:1fr 1fr auto;align-items:end;gap:12px;padding-bottom:20px;display:grid}.form-stack label,.form-inline label,.assignment-card label{color:#596862;gap:6px;font-size:13px;font-weight:700;display:grid}input,select{color:#17201d;background:#fff;border:1px solid #c9d2ce;border-radius:9px;width:100%;padding:10px 11px}.button{color:#263b34;cursor:pointer;background:#fff;border:1px solid #c5d0cb;border-radius:9px;padding:9px 14px;font-weight:800}.button:disabled{cursor:not-allowed;opacity:.5}.button-primary{color:#fff;background:#17694f;border-color:#17694f}.button-small{padding:7px 10px;font-size:12px}.form-error,.global-error{color:#9a352f}.global-error{background:#fff0ed;border-radius:10px;padding:12px 15px}.notice{color:#955b1d;margin:0;font-size:12px;line-height:1.5}.help{color:#74817c;margin:0;font-size:12px}.upload-result{color:#24623b;margin:0;font-weight:800}.integration-grid{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.integration{background:#f4f6f4;border-radius:12px;grid-template-columns:auto 1fr;align-items:center;gap:3px 9px;padding:14px;display:grid}.integration small{color:#6e7b76;grid-column:2}.status-dot{background:#ad4b42;border-radius:50%;width:9px;height:9px}.ready .status-dot{background:#2e8a60}.front-list{gap:8px;display:grid}.front-list article{background:#f5f7f5;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:12px;display:flex}.front-list small,.assignment-card small{color:#78847f;margin-top:4px;display:block}.verified{color:#24623b;font-size:12px;font-weight:800}.assignment-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:18px;display:grid}.assignment-card{border:1px solid #e2e7e3;border-radius:12px;gap:12px;padding:16px;display:grid}@media (width<=760px){.dashboard-grid,.assignment-grid,.form-inline,.integration-grid{grid-template-columns:1fr}.panel.wide{grid-column:auto}main{padding-top:28px}}
