:root{font-family:Inter,Noto Sans SC,system-ui,sans-serif;color:#192b30;background:#f2f5f2;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:860px}button,input,select,textarea{font:inherit}header{height:64px;padding:0 32px;display:flex;align-items:center;gap:12px;color:#f8fffa;background:#153c38}header span{margin-left:auto;color:#b8cec8;font-size:12px}.brand{width:32px;height:32px;display:grid;place-items:center;border-radius:9px;color:#173b35;background:#c7df70;font-weight:900}main{max-width:1260px;margin:auto;padding:40px}.heading{display:flex;justify-content:space-between;align-items:end}.heading small,.dialog-title small{color:#69852b;font-weight:800;letter-spacing:.12em}.heading h1{margin:5px 0;font-size:34px}.heading p{color:#6f7d79}.session{padding:9px 13px;border:1px solid #d5ddd8;border-radius:999px;background:#fff;font-size:12px}.notice,.error{margin:20px 0;padding:13px 16px;border-radius:9px}.notice{color:#765f27;border:1px solid #e4d7ac;background:#fff9e7}.error{color:#8b3f34;border:1px solid #ecc9c3;background:#fff0ed}.notice button{margin-left:8px;border:0;color:#65501d;background:transparent;text-decoration:underline}.toolbar{display:flex;gap:10px;margin:22px 0}.toolbar select,.toolbar button{padding:10px 14px;border:1px solid #d3dcd6;border-radius:8px;background:#fff}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.cards article{padding:20px;border:1px solid #dde5e0;border-radius:13px;background:#fff;box-shadow:0 8px 24px #1d473b0a}.cards article>div{display:flex;justify-content:space-between;align-items:center}.cards article h2{margin:22px 0 6px}.cards article p,.cards article small{color:#75817e}.cards article button,.accept,.reject{width:100%;padding:10px;border:0;border-radius:8px;color:#fff;background:#246554}.state{padding:4px 8px;border-radius:6px;font-size:12px;background:#edf1ee}.state.offered{color:#855f1e;background:#fff0cf}.state.accepted{color:#24694d;background:#e2f4e8}.empty{grid-column:1 / -1;padding:70px;text-align:center;color:#71807b}.backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#102a2866}.backdrop aside{position:absolute;inset:0 0 0 auto;width:min(660px,80vw);overflow:auto;background:#f6f8f6}.dialog-title{position:sticky;top:0;display:flex;justify-content:space-between;padding:24px 28px;background:#fff;border-bottom:1px solid #e1e7e3}.dialog-title h2{margin:4px 0}.dialog-title button{border:0;background:transparent;font-size:26px}.detail{padding:24px 28px}.detail dl{display:grid;grid-template-columns:1fr 1fr;gap:10px}.detail dl div,.line{padding:13px;border:1px solid #e0e7e2;border-radius:8px;background:#fff}.detail dt,.line span{color:#7a8783;font-size:12px}.detail dd{margin:5px 0 0}.line{display:flex;justify-content:space-between;margin-bottom:7px}.actions{display:grid;gap:9px;margin-top:24px;padding-top:18px;border-top:1px solid #dde4df}.actions label{display:grid;grid-template-columns:100px 1fr;align-items:center}.actions input,.actions select,.actions textarea{min-width:0;padding:9px;border:1px solid #ccd7d0;border-radius:7px;background:#fff}.actions textarea{min-height:80px;resize:vertical}.reject{background:#8d5147}.actions button:disabled{opacity:.45;cursor:not-allowed}.login-shell{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 50% 0,#d9ebe3,transparent 34rem),#eef3ef}.login-card{width:440px;padding:36px;border:1px solid #d8e1dc;border-radius:18px;background:#fff;box-shadow:0 24px 70px #14352c1c}.register-card{width:min(520px,calc(100vw - 32px));max-height:92vh;overflow:auto}.login-card>small{display:block;margin-top:20px;color:#69852b;font-weight:800;letter-spacing:.14em}.login-card h1{margin:5px 0 10px}.login-card p{color:#667570;line-height:1.55}.login-card label{display:grid;gap:5px;margin-top:12px;color:#4e5e59;font-size:13px}.login-card input{padding:10px 11px;border:1px solid #ccd7d0;border-radius:8px}.phone-field{display:flex;gap:8px;align-items:center}.phone-field span{flex:0 0 auto;padding:10px 12px;border:1px solid #ccd7d0;border-radius:8px;background:#f4f7f5;color:#315249;font-weight:700}.phone-field input{flex:1;min-width:0}.login-card button{width:100%;margin-top:18px;padding:11px;border:0;border-radius:8px;color:#fff;background:#246554}.login-card button:disabled{opacity:.55}.login-card button.secondary{color:#315249;background:#e8efeb}.login-card em{display:block;margin-top:14px;color:#7a8783;font-size:11px;font-style:normal;text-align:center}.totp-secret{display:block;margin-top:8px;overflow-wrap:anywhere;font-size:14px}
