:root{font-family:Inter,system-ui,sans-serif;color:#e9f3fb;background:#06101d}*{box-sizing:border-box}body{margin:0;background:#06101d;min-width:320px}button,input,select,textarea{font:inherit}button{border:0;color:inherit;background:transparent;min-height:44px;cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #f1c25b;outline-offset:2px}input,select,textarea{min-height:44px;width:100%;border:1px solid #294157;border-radius:10px;background:#0c1c2c;color:#edf7ff;padding:.65rem}textarea{min-height:84px;resize:vertical}label{display:grid;gap:.35rem;color:#b9cce0;font-size:.82rem}.login{min-height:100dvh;display:grid;align-content:center;gap:1rem;padding:28px;background:radial-gradient(circle at 70% 10%,#123a53,#06101d 55%)}.login h1{margin:0;font-size:2rem}.login p{margin:0;color:#afc1d2}.brand{font-size:2.8rem;font-weight:800;letter-spacing:.12em;color:#f4d787}.brand small{font-size:.65rem;letter-spacing:0;color:#a9bdcd}.primary{background:#f3c450!important;color:#07101b!important;border-radius:10px;padding:0 1rem;font-weight:700}.password{display:flex;gap:.4rem}.password button{width:50px;border:1px solid #294157;border-radius:10px}.planner{min-height:100dvh;padding-bottom:86px;background:#071320}.planner-header{display:flex;align-items:center;justify-content:space-between;padding:18px 18px 12px;background:#07111d;border-bottom:1px solid #1d3346}.planner-header h1{margin:4px 0 0;font-size:1.45rem}.planner-header small{font-size:.62rem;letter-spacing:.14em;color:#58d7cc}.network{border:1px solid #855f2d;border-radius:999px;padding:0 .75rem;color:#f3c450;min-height:35px;font-size:.76rem}.network.online{border-color:#2b7b72;color:#62e1d3}.main-tabs,.scales{display:flex;gap:.15rem;overflow-x:auto;padding:.45rem .75rem;border-bottom:1px solid #1d3346;background:#0a1725}.main-tabs button,.scales button{white-space:nowrap;padding:0 .7rem;min-height:38px;color:#afc2d4;font-size:.78rem;border-radius:8px}.main-tabs .selected,.scales .selected{background:#183c59;color:#f6fbff;box-shadow:inset 0 -2px #63d7cd}.day-strip{background:#0b1929;border-bottom:1px solid #1d3346}.monthbar{display:flex;justify-content:center;align-items:center;gap:.3rem;padding:.55rem}.monthbar button{min-height:36px;padding:0 .6rem;color:#d5e5f1}.days{display:grid;grid-template-columns:repeat(7,1fr);padding:.25rem .45rem .6rem;touch-action:pan-y}.days button{position:relative;display:grid;place-items:center;gap:.12rem;min-width:0;min-height:55px;color:#a5bacd;border-radius:12px}.days b{font-size:1.05rem}.days .selected{background:#1d3c59;color:#fff;box-shadow:inset 0 -2px #f1c25b}.days i,.month-picker i{position:absolute;width:5px;height:5px;border-radius:50%;background:#5ed9cf;bottom:5px}.month-picker{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;padding:.65rem;background:#0c1d2e;border-top:1px solid #294157}.month-picker small{text-align:center;color:#93aabe}.month-picker button{position:relative;min-width:0;min-height:38px;border-radius:8px}.month-picker .selected{background:#235376}.month-picker .outside{opacity:.42}.command{display:grid;grid-template-columns:auto 1fr auto;gap:.4rem;padding:.7rem;border-bottom:1px solid #1d3346}.command button{border:1px solid #2b4a60;border-radius:9px;padding:0 .65rem;color:#c7d8e7}.command button:last-child{background:#f3c450;color:#08111e;border:0;font-size:1.5rem}.command input{min-width:0;min-height:40px}.status{margin:0;padding:.45rem .85rem;color:#9eb6c9;font-size:.77rem}.agenda{padding:.25rem .7rem 1rem}.agenda h2{font-size:1.05rem;margin:.5rem 0;color:#e6f1fa}.agenda-row{position:relative;overflow:hidden;border-bottom:1px solid #20394d;touch-action:pan-y}.agenda-row.event{border-left:3px solid #d786a2}.agenda-row.task{border-left:3px solid #55bacf}.agenda-row.completed{opacity:.64}.agenda-main{position:relative;z-index:1;display:grid;grid-template-columns:44px 1fr 42px;align-items:center;min-height:66px;background:#0a1928;cursor:pointer}.agenda-main b{display:block;font-size:.94rem;line-height:1.3;overflow-wrap:anywhere}.agenda-main small{display:block;margin-top:.15rem;color:#a9bfd1;font-size:.72rem;line-height:1.4}.check{font-size:1.25rem;color:#65d8cd}.more{font-size:1.25rem;color:#b6cada}.swipe-actions{position:absolute;inset:0;display:flex;z-index:0}.swipe-actions.left{justify-content:flex-start}.swipe-actions.right{justify-content:flex-end}.swipe-actions button{min-width:83px;background:#1e5368}.swipe-actions .danger{background:#a33a4b}.empty{color:#a8bdce;padding:1rem 0}.calendar{padding:.65rem}.calendar.year{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem}.calendar-month{border:1px solid #233e52;border-radius:12px;padding:.4rem;background:#0a1928}.calendar-month h2{margin:.15rem .2rem .45rem;font-size:.85rem;text-transform:capitalize}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:1px}.calendar-grid small{text-align:center;color:#8ea7bb;font-size:.57rem}.calendar-grid button{position:relative;min-width:0;min-height:45px;padding:0;font-size:.78rem;border-radius:6px;color:#d8e8f5}.calendar-grid .outside{opacity:.35}.calendar-grid .selected{background:#255677}.calendar-grid span{display:flex;position:absolute;bottom:4px;left:0;right:0;justify-content:center;gap:2px}.calendar-grid i{width:4px;height:4px;border-radius:50%;background:#57d3c6}.calendar-grid i.event{background:#e58cad}.calendar.year .calendar-grid button{min-height:25px;font-size:.65rem}.calendar.year .calendar-grid small{display:none}.calendar.year .calendar-month h2{font-size:.72rem}.bottom-nav{position:fixed;z-index:5;bottom:0;left:0;right:0;height:72px;display:grid;grid-template-columns:repeat(5,1fr);align-items:center;background:#081321ef;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid #294157}.bottom-nav button{min-width:0;min-height:58px;padding:0 .15rem;color:#b3c5d5;font-size:.64rem}.bottom-nav .add{width:56px;height:56px;justify-self:center;border-radius:50%;background:#f3c450;color:#07111d;font-size:2rem;box-shadow:0 0 0 4px #264461}.sheet{position:fixed;z-index:20;inset:0;display:flex;align-items:flex-end;background:#020a12bb}.sheet form{width:100%;max-height:92dvh;overflow:auto;border-radius:20px 20px 0 0;background:#0a1928;border-top:1px solid #34526a;padding:1rem}.sheet header{display:flex;justify-content:space-between;align-items:start;margin-bottom:1rem}.sheet header h2{margin:.2rem 0;font-size:1.3rem}.sheet header small{color:#67d9ce;letter-spacing:.1em;font-size:.62rem}.sheet header button{font-size:1.5rem;min-height:36px}.type-switch{display:grid;grid-template-columns:1fr 1fr;border:1px solid #294157;border-radius:10px;overflow:hidden;margin-bottom:.8rem}.type-switch button{min-height:40px;color:#b7cada}.type-switch .selected{background:#1d4664;color:#fff}.editor{display:grid;grid-template-columns:1fr 1fr;gap:.65rem}.editor .wide{grid-column:1/-1}.editor fieldset{margin:0;border:1px solid #294157;border-radius:10px;color:#b9cce0}.editor legend{font-size:.8rem}.checkline{display:flex;align-items:center;grid-template-columns:18px 1fr}.checkline input{min-height:20px}.new-check{display:flex;gap:.35rem;margin-top:.4rem}.new-check button{padding:0 .45rem;border:1px solid #426078;border-radius:8px;min-height:40px;font-size:.78rem}.sheet footer{display:flex;justify-content:space-between;gap:.5rem;padding-top:1rem;margin-top:1rem;border-top:1px solid #294157}.sheet footer span{display:flex;gap:.4rem;flex-wrap:wrap}.sheet footer button{border:1px solid #37546b;border-radius:9px;padding:0 .65rem;font-size:.8rem}.sheet footer .danger{border-color:#9a3d4a;color:#ffd9de}.readonly{color:#c8d9e9;line-height:1.5}@media(min-width:680px){.planner{max-width:680px;margin:auto;border-inline:1px solid #20394d}.bottom-nav{left:calc(50% - 340px);right:calc(50% - 340px)}.calendar.year{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:380px){.editor,.calendar.year{grid-template-columns:1fr}.main-tabs button{padding:0 .5rem}}.preview-controls{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem;margin:.5rem .75rem;padding:.55rem;border:1px dashed #5bd6cf;border-radius:.7rem;color:#d7e7ef;background:#102a39;font-size:.76rem}.preview-controls b{color:#f4c85b;margin-inline-end:.25rem}.preview-controls button{min-height:32px;padding:.25rem .45rem;border:1px solid #3c6074;border-radius:.45rem;background:#142c3a;color:#e7f3f8;font:inherit}.preview-controls button.selected{border-color:#f4c85b;background:#254456;color:#fff}.update{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin:0 .7rem .55rem;padding:.55rem .7rem;border:1px solid #31546c;border-radius:10px;background:#0b1c2b;color:#c9d9e7;font-size:.78rem}.update button{min-height:36px;padding:0 .65rem;border:1px solid #42647d;border-radius:8px;color:#e9f5ff}.update b{color:#f3d77b}.update small{color:#aac1d3}.update .primary{border:0}:root{--via-bg:#071320;--via-surface:#0b1a2a;--via-surface-raised:#10243a;--via-line:#21415b;--via-text:#edf7ff;--via-text-muted:#abc1d5;--via-accent:#54d7cf;--via-gold:#f3c34d;--via-danger:#cc5a68;--via-radius-sm:10px;--via-radius-md:16px;--via-shadow-sheet:0 -14px 38px rgba(0,0,0,.35)}.via-bottom-navigation{position:sticky;bottom:0;z-index:4;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));align-items:end;gap:2px;padding:8px 6px calc(8px + env(safe-area-inset-bottom));background:color-mix(in srgb,var(--via-bg) 94%,black);border-top:1px solid var(--via-line)}.via-bottom-navigation button{min-height:50px;padding:4px 1px;background:transparent;border:0;color:var(--via-text-muted);font-size:10px}.via-bottom-navigation button i{display:block;height:22px;font-size:20px;font-style:normal;line-height:20px}.via-bottom-navigation button span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.via-bottom-navigation button.active{color:var(--via-accent)}.via-bottom-navigation .via-create{display:grid;place-items:center;min-height:58px;color:var(--via-bg)}.via-bottom-navigation .via-create i{display:grid;place-items:center;width:50px;height:50px;border-radius:50%;background:var(--via-gold);box-shadow:0 7px 18px #00000070;font-size:30px}.via-day-strip,.via-agenda,.via-agenda-card,.sheet{border-color:var(--via-line)}.via-agenda-card{border-radius:var(--via-radius-sm)}.via-date-time-fields{display:contents}.via-date-time-fields label{min-width:0}.sheet{box-shadow:var(--via-shadow-sheet)}
