:root{--n0:#06142e;--n1:#0a2350;--n2:#0f2f69;--n3:#163d84;--nl:#24508f;--tk:#6cc4ff;--tk2:#a9dcff;--ok:#2fbf7a;--warn:#f2a93b;--bad:#ef4b4b;--mut:#9fb6d8}
*{box-sizing:border-box}body{margin:0;font-family:Heebo,system-ui,sans-serif;background:var(--n0);color:#eaf2fd;line-height:1.5;-webkit-font-smoothing:antialiased;padding-bottom:30px}
h2,b.big{font-family:"Miriam Libre",Heebo,sans-serif}
.aw{width:min(860px,100% - 24px);margin-inline:auto}
.demo-bar{background:var(--tk);color:var(--n0);text-align:center;font-size:.8rem;font-weight:800;padding:5px 10px}
.ah{position:sticky;top:0;z-index:20;background:rgba(6,20,46,.94);backdrop-filter:blur(10px);border-bottom:1px solid var(--nl)}
.ah-in{display:flex;align-items:center;justify-content:space-between;height:60px;gap:10px}
.ah-t{display:flex;gap:10px;align-items:center}.ah-t b{font-family:"Miriam Libre";font-size:1.08rem;display:block}.ah-t small{color:var(--mut);font-size:.78rem}
.lock{width:38px;height:38px;border-radius:10px;background:var(--n2);border:1px solid var(--tk);display:grid;place-items:center}
.ab{font:inherit;font-weight:800;border:0;border-radius:12px;padding:10px 16px;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;font-size:.95rem}
.ab:active{transform:scale(.97)}.ab-pri{background:var(--tk);color:var(--n0)}.ab-ghost{background:var(--n2);color:var(--tk2);border:1px solid var(--nl)}.ab-out{background:transparent;color:#ffb4b4;border:1.5px solid #7a3550;width:100%}
.sum{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:16px 0}
.sum div{background:var(--n1);border:1px solid var(--nl);border-radius:16px;padding:12px}.sum b{display:block;font-family:"Miriam Libre";font-size:1.6rem;color:var(--tk);line-height:1.1}.sum span{font-size:.8rem;color:var(--mut)}
.blk{background:var(--n1);border:1px solid var(--nl);border-radius:20px;padding:16px;margin-bottom:14px}
.blk-h{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}
.blk h2{margin:0;font-size:1.15rem}.hint{color:var(--mut);font-size:.85rem;margin:6px 0 12px}
.cnt-ctl{display:flex;align-items:center;gap:8px;font-size:.85rem;color:var(--mut)}.cnt-ctl b{font-size:1.1rem;color:#fff;min-width:16px;text-align:center}
.ic{width:36px;height:36px;border-radius:10px;border:1px solid var(--nl);background:var(--n2);color:#fff;font:inherit;font-size:1.2rem;font-weight:800;cursor:pointer}
.lifts{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}@media(max-width:620px){.lifts{grid-template-columns:1fr}}
.lift{background:var(--n2);border:1.5px solid var(--nl);border-radius:16px;padding:12px;transition:border-color .2s}
.lift.s-free{border-color:rgba(47,191,122,.6)}.lift.s-busy{border-color:rgba(239,75,75,.55)}.lift.s-break{border-color:rgba(242,169,59,.6)}
.lift-h{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.lift-h b{font-size:1.02rem}
.st{font-size:.8rem;font-weight:800;padding:3px 10px;border-radius:999px}.s-free .st{background:rgba(47,191,122,.18);color:#7fe3b0}.s-busy .st{background:rgba(239,75,75,.18);color:#ffaaaa}.s-break .st{background:rgba(242,169,59,.18);color:#ffd08a}
.seg{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;background:var(--n0);border-radius:12px;padding:4px}
.seg button{font:inherit;font-weight:800;font-size:.9rem;border:0;border-radius:9px;padding:10px 4px;background:transparent;color:var(--mut);cursor:pointer;min-height:44px}
.seg button[aria-pressed=true][data-v=free]{background:var(--ok);color:#03220f}.seg button[aria-pressed=true][data-v=busy]{background:var(--bad);color:#fff}.seg button[aria-pressed=true][data-v=break]{background:var(--warn);color:#2a1700}
.until{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:10px;font-size:.85rem;color:var(--mut)}
.until button{font:inherit;font-size:.82rem;font-weight:700;border:1px solid var(--nl);background:var(--n1);color:#dce9fb;border-radius:999px;padding:6px 10px;cursor:pointer;min-height:36px}
.until input{font:inherit;background:var(--n0);border:1px solid var(--nl);color:#fff;border-radius:10px;padding:5px 8px;min-height:36px}
.durs{display:grid;gap:8px}
.dur{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;background:var(--n2);border-radius:14px;padding:8px 10px}
.dur i{font-style:normal;font-size:1.3rem}.dur span small{display:block;color:var(--mut);font-size:.76rem}
.step{display:flex;align-items:center;gap:6px}.step b{min-width:64px;text-align:center;font-size:.95rem}
.blockf{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr auto;gap:8px;align-items:end}@media(max-width:620px){.blockf{grid-template-columns:1fr 1fr}.blockf label:first-child{grid-column:1/-1}.blockf button{grid-column:1/-1}}
.blockf label,.hrs label{display:grid;gap:4px;font-size:.8rem;color:var(--mut);font-weight:700}
select,input[type=time]{font:inherit;background:var(--n0);border:1px solid var(--nl);color:#fff;border-radius:10px;padding:9px 10px;min-height:44px;width:100%}
.quick{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0}.qc{font:inherit;font-size:.82rem;font-weight:700;background:transparent;color:var(--tk2);border:1px dashed var(--nl);border-radius:999px;padding:7px 12px;cursor:pointer}
.blocks{list-style:none;padding:0;margin:0;display:grid;gap:6px}.blocks li{display:flex;justify-content:space-between;align-items:center;background:var(--n2);border-radius:12px;padding:8px 12px;font-size:.92rem}
.blocks li button{background:transparent;border:0;color:#ffaaaa;font:inherit;font-weight:800;cursor:pointer;padding:6px 8px}.blocks .none{color:var(--mut);background:transparent;padding:0}
.hrs{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.prev{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}@media(max-width:620px){.prev{grid-template-columns:1fr}}
.prev div{background:var(--n2);border-radius:12px;padding:10px 12px;font-size:.9rem;display:flex;justify-content:space-between;gap:8px}.prev b{color:var(--tk)}
.danger{background:transparent;border-style:dashed}
.af{text-align:center;color:var(--tk);font-weight:800;font-size:.85rem;margin-top:20px}
.toast{position:fixed;bottom:20px;left:50%;transform:translate(-50%,30px);opacity:0;background:var(--ok);color:#03220f;font-weight:800;padding:10px 18px;border-radius:999px;transition:.25s;z-index:50;pointer-events:none;white-space:nowrap;font-size:.9rem}
.toast.on{opacity:1;transform:translate(-50%,0)}
