:root{--canvas:#f0fdfa;--surface:#fff;--ink:#12343b;--muted:#49656b;--line:#cce7e3;--pine:#0f766e;--mint:#d1fae5;--mono:"DM Mono", monospace;--display:"Space Grotesk", sans-serif}*{box-sizing:border-box}html,body{min-height:100%;margin:0}body{background:var(--canvas);color:var(--ink);-webkit-font-smoothing:antialiased;font-family:Inter,sans-serif}a{color:inherit}button{font:inherit}.app{width:min(1100px,100% - 64px);min-height:100vh;margin:auto}header{border-bottom:1px solid var(--line);align-items:center;gap:14px;min-height:86px;display:flex}.brand{background:var(--ink);width:42px;height:42px;color:var(--mint);border-radius:13px;place-items:center;font-family:Doto,sans-serif;font-size:24px;font-weight:800;text-decoration:none;display:grid}.identity{font-family:var(--display);gap:3px;margin-right:auto;font-size:15px;display:grid}.identity small{color:var(--muted);font-family:Inter,sans-serif;font-size:11px}.logout{border:1px solid var(--line);color:var(--muted);cursor:pointer;font:11px var(--mono);background:0 0;border-radius:8px;padding:9px 12px}.logout:hover{border-color:var(--muted);color:var(--ink)}.workspace{grid-template-columns:1fr 360px;align-items:center;gap:clamp(48px,9vw,120px);min-height:calc(100vh - 86px);padding:64px 0;display:grid}.eyebrow{color:var(--muted);font:500 10px var(--mono);letter-spacing:.06em;text-transform:uppercase}.intro h1{font:500 clamp(52px, 8vw, 90px)/.94 var(--display);letter-spacing:-.08em;margin:16px 0 18px}.intro p{max-width:430px;color:var(--muted);margin:0;line-height:1.75}.calculator{border:1px solid var(--line);background:var(--surface);border-radius:20px;padding:18px;box-shadow:0 18px 50px #12343b14}.display{background:var(--ink);color:#fff;border-radius:12px;flex-direction:column;justify-content:end;align-items:flex-end;min-height:116px;padding:16px;display:flex}.display small{color:#99b8b5;font:10px var(--mono)}.display strong{max-width:100%;color:var(--mint);font:500 42px var(--display);text-overflow:ellipsis;overflow:hidden}.keypad{grid-template-columns:repeat(4,1fr);gap:9px;margin-top:12px;display:grid}.keypad button{border:1px solid var(--line);background:var(--canvas);min-height:54px;color:var(--ink);cursor:pointer;font:500 16px var(--mono);border-radius:10px}.keypad button:hover{border-color:var(--pine);color:var(--pine)}.keypad .operator,.keypad .equals{background:var(--mint);border-color:var(--mint);color:var(--pine)}.keypad .clear{color:#a33c31}.keypad .equals{grid-column:span 4}.error{color:#a33c31;margin:12px 2px 0;font-size:12px}.state{min-height:100vh;color:var(--muted);font:12px var(--mono);place-items:center;gap:12px;display:grid}.notice-card{border:1px solid var(--line);background:var(--surface);border-radius:18px;width:min(100% - 40px,480px);padding:42px;box-shadow:0 18px 50px #12343b14}.notice-card h1{font:500 42px/1 var(--display);letter-spacing:-.06em;margin:16px 0}.notice-card p{color:var(--muted);margin:0 0 26px;line-height:1.65}.button{background:var(--pine);color:#fff;min-height:48px;font:11px var(--mono);border-radius:8px;place-items:center;padding:0 16px;text-decoration:none;display:inline-grid}.loader{border:2px solid var(--line);border-top-color:var(--pine);border-radius:99px;width:18px;height:18px;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width:760px){.app{width:calc(100% - 32px)}.workspace{padding:52px 0;display:block}.intro{margin-bottom:40px}.calculator{width:min(100%,420px);margin:auto}}
