*{box-sizing:border-box;margin:0}
html,body{width:1280px;height:826px;overflow:hidden}
body{font:400 13px/1.45 system-ui,"Segoe UI",Arial,sans-serif;color:#0f172a;background:#f3f6f8;position:relative}
button,input,textarea{font:inherit;color:inherit}
.scene{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .45s,visibility .45s}
.scene.on{opacity:1;visibility:visible}
.logo{font:italic 800 24px/1 Georgia,serif;color:#0e6f86;letter-spacing:-.02em}.logo span{font-weight:400;color:#0f172a;margin-inline-start:2px}
.logo.light{color:#7dd3e0}.logo.light span{color:#fff}
.top{height:54px;background:#fff;border-bottom:1px solid #e5e7eb;display:flex;align-items:center;justify-content:space-between;padding:0 290px}
.admin-link{border:0;background:#0e7490;color:#fff;border-radius:7px;padding:5px 11px;font-size:11.5px}
.wrap{width:700px;margin:22px auto 0}
.wrap h1{font-size:22px}.lead{color:#64748b;font-size:12px;margin-bottom:14px}
.steps{display:flex;justify-content:space-between;list-style:none;padding:0;margin-bottom:16px;counter-reset:s}
.steps li{display:flex;flex-direction:column;align-items:center;gap:5px;font-size:10.5px;color:#94a3b8;counter-increment:s;flex:1}
.steps li:before{content:counter(s);width:26px;height:26px;border-radius:50%;background:#e2e8f0;color:#64748b;display:grid;place-items:center;font-weight:700;font-size:11px;transition:background .3s,color .3s}
.steps li.on{color:#0e7490;font-weight:600}.steps li.on:before{background:#0e7490;color:#fff}
.steps li.done:before{content:"✓";background:#ccfbf1;color:#0e7490}
.card{background:#fff;border:1px solid #e8edf2;border-radius:14px;padding:18px 22px;position:relative;box-shadow:0 1px 3px #0000000a}
.card h2{font-size:16px}.hint{color:#64748b;font-size:11.5px;margin:2px 0 12px}
.step{display:none;min-height:330px}.step.on{display:block;animation:in .35s ease}
@keyframes in{from{opacity:0;transform:translateX(-10px)}to{opacity:1;transform:none}}
.f2{display:grid;grid-template-columns:1fr 1fr;gap:10px 14px}
label{display:flex;flex-direction:column;gap:4px;font-size:11.5px;font-weight:600}
input,textarea{border:1px solid #e2e8f0;border-radius:8px;padding:8px 10px;font-weight:400;outline:none;background:#fff;transition:border-color .2s,box-shadow .2s}
input.typing,textarea.typing{border-color:#0e7490;box-shadow:0 0 0 3px #0e749022}
textarea{width:100%;height:120px;resize:none}
.check{display:flex;align-items:center;gap:9px;margin-top:14px;background:#f0f9fb;border-radius:10px;padding:10px 12px;font-size:12px}
.check i,.opt i{width:17px;height:17px;border-radius:50%;border:2px solid #94a3b8;display:inline-block;transition:background .2s,border-color .2s}
.check.on i,.opt.on i{background:#0e7490;border-color:#0e7490;box-shadow:inset 0 0 0 3px #fff}
.opts{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.opt{border:1.5px solid #e2e8f0;border-radius:12px;padding:14px;display:grid;grid-template-columns:24px 1fr;gap:2px 8px;transition:border-color .25s,background .25s}
.opt i{grid-row:span 2;align-self:center}.opt b{font-size:13px}.opt small{color:#64748b;font-size:11px}
.opt.on{border-color:#0e7490;background:#f0f9fb}
.weeks{display:grid;gap:12px}
.week b{font-size:12px;display:block;margin-bottom:6px}
.days{display:flex;gap:8px;flex-wrap:wrap}
.day{width:78px;border:1.5px solid #e2e8f0;border-radius:10px;padding:8px 4px;text-align:center;font-size:11px;transition:border-color .2s,background .2s,color .2s}
.day small{display:block;color:#64748b;font-size:10px}
.day.on{border-color:#0e7490;background:#0e7490;color:#fff}.day.on small{color:#cffafe}
.nav{display:flex;align-items:center;gap:8px;border-top:1px solid #f1f5f9;margin-top:14px;padding-top:12px}
.nav span{margin-inline-start:auto;margin-inline-end:auto;color:#64748b;font-size:11.5px}
.ghost{border:1px solid #e2e8f0;background:#fff;border-radius:8px;padding:6px 12px;font-size:12px}
.teal{border:0;background:#0e7490;color:#fff;border-radius:8px;padding:7px 16px;font-weight:600;font-size:12.5px}
.sent{margin-top:14px;background:#ecfdf5;color:#047857;border-radius:10px;padding:10px 12px;font-weight:600;opacity:0;transform:translateY(6px);transition:opacity .35s,transform .35s}.sent.on{opacity:1;transform:none}
#s-admin{display:flex}
.side{width:210px;background:#0f2236;color:#cbd5e1;padding:18px 12px;display:flex;flex-direction:column;gap:3px}
.side .logo{margin:4px 8px 22px}
.side a{padding:9px 12px;border-radius:9px;font-size:12.5px;transition:background .25s,color .25s}
.side a.on{background:#1e3a52;color:#fff;font-weight:600}
#s-admin main{flex:1;position:relative}
.page{position:absolute;inset:0;padding:24px 34px;opacity:0;visibility:hidden;transform:translateX(-14px);transition:opacity .4s,visibility .4s,transform .4s}
.page.on{opacity:1;visibility:visible;transform:none}
.ph{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px}.ph h1{font-size:21px}.ph p{color:#64748b;font-size:12px}
.sel{border:1px solid #e2e8f0;background:#fff;border-radius:8px;padding:6px 12px;font-size:12px}
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:14px}
.stat{background:#fff;border:1px solid #e8edf2;border-radius:12px;padding:14px 16px;display:flex;justify-content:space-between;align-items:center}
.stat strong{font-size:25px;display:block;transition:color .3s}.stat small{color:#64748b;font-size:11.5px}.stat .ic{width:34px;height:34px;border-radius:9px;display:grid;place-items:center}
.stat.bump strong{color:#0e7490}
.tbl{width:100%;border-collapse:collapse;font-size:12px;margin-top:10px}
.tbl th{background:#f8fafc;color:#64748b;font-weight:500;text-align:right;padding:9px 12px}
.tbl td{padding:10px 12px;border-top:1px solid #f1f5f9}
.tbl td.total{color:#0e7490;font-weight:700}
.grid th,.grid td{text-align:center}.grid th:first-child,.grid td:first-child{text-align:right}
.grid .y{color:#16a34a;font-weight:700}.grid .n{color:#dc2626}
.grid tr.new{background:#ecfeff;animation:flash 1.2s ease}
@keyframes flash{from{background:#a5f3fc}}
.badge{position:absolute;left:24px;bottom:8px;font:600 8.5px/1 ui-monospace,monospace;letter-spacing:.12em;color:#94a3b8;z-index:3}
body.static .demo-pointer{display:none}
