:root{--bg:#f4f5f8;--bg2:#eceef3;--card:#fff;--tx:#161a23;--mu:#667085;--ln:#e3e6ec;--ac:#2f6df6;--acs:rgba(47,109,246,.10);--red:#e5484d;--reds:rgba(229,72,77,.10);--or:#e8890c;--ors:rgba(232,137,12,.12);--gr:#2f9e5a;--grs:rgba(47,158,90,.12);--sh:0 1px 2px rgba(16,24,40,.05),0 4px 16px rgba(16,24,40,.06);--r:16px}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0e1116;--bg2:#151a21;--card:#171c24;--tx:#e8ebf1;--mu:#98a2b3;--ln:#262d38;--ac:#6b9bff;--acs:rgba(107,155,255,.14);--red:#ff6b6f;--reds:rgba(255,107,111,.14);--or:#ffaa3b;--ors:rgba(255,170,59,.14);--gr:#4cc47e;--grs:rgba(76,196,126,.14);--sh:0 1px 2px rgba(0,0,0,.3),0 6px 20px rgba(0,0,0,.25)}}:root[data-theme=dark]{--bg:#0e1116;--bg2:#151a21;--card:#171c24;--tx:#e8ebf1;--mu:#98a2b3;--ln:#262d38;--ac:#6b9bff;--acs:rgba(107,155,255,.14);--red:#ff6b6f;--reds:rgba(255,107,111,.14);--or:#ffaa3b;--ors:rgba(255,170,59,.14);--gr:#4cc47e;--grs:rgba(76,196,126,.14);--sh:0 1px 2px rgba(0,0,0,.3),0 6px 20px rgba(0,0,0,.25)}

*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
body{margin:0;background:var(--bg);color:var(--tx);font:15px/1.5 -apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",Roboto,Arial,sans-serif;padding-bottom:calc(96px + env(safe-area-inset-bottom))}
.wrap{max-width:1180px;margin:auto;padding:0 16px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:8px;top:-60px;z-index:30;background:var(--card);color:var(--tx);border:2px solid var(--ac);border-radius:10px;padding:10px 14px}
.skip:focus{top:8px}

/* focus */
:focus-visible{outline:3px solid var(--ac);outline-offset:2px}
.primary:focus-visible{outline-color:var(--tx)}
#content:focus{outline:none}

/* header */
header.top{position:sticky;top:0;z-index:10;background:color-mix(in srgb,var(--bg) 82%,transparent);backdrop-filter:saturate(1.6) blur(14px);-webkit-backdrop-filter:saturate(1.6) blur(14px);border-bottom:1px solid var(--ln)}
.top .wrap{display:flex;align-items:center;gap:10px;padding-top:calc(10px + env(safe-area-inset-top));padding-bottom:10px}
.logo{flex:none;width:36px;height:36px;border-radius:11px;display:grid;place-items:center;background:linear-gradient(135deg,#3ddc84,#2f6df6);color:#fff;font-size:19px;box-shadow:var(--sh)}
.ttl{flex:1;min-width:0}
.ttl h1{font-size:17px;margin:0;line-height:1.2}
.sub{font-size:12.5px;color:var(--mu)}
.top form{margin:0}

/* buttons */
.btn,.primary,.chip{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;border:1px solid var(--ln);background:var(--card);color:var(--tx);border-radius:12px;padding:8px 14px;font:inherit;font-size:14px;cursor:pointer;text-decoration:none;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:background .15s,border-color .15s,transform .1s}
.btn:active,.primary:active,.chip:active,.stat:active{transform:scale(.98)}
.btn.icon{min-width:44px;padding:8px;font-size:18px}
.logout .ico{display:none;font-size:18px}
.primary{background:var(--ac);border-color:var(--ac);color:#fff;font-weight:600}

/* summary counters (quick filters) */
.stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:16px 0 0}
.stat{display:flex;flex-direction:column;align-items:flex-start;gap:2px;min-height:76px;text-align:left;border:1px solid var(--ln);border-radius:var(--r);background:var(--card);color:var(--tx);box-shadow:var(--sh);padding:12px 14px;font:inherit;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:border-color .15s,background .15s,transform .1s}
.stat .num{font-size:30px;line-height:1.05;font-weight:750;font-variant-numeric:tabular-nums}
.stat .lab{font-size:13px;font-weight:600;color:var(--mu)}
.stat.waiting .num{color:var(--ac)}
.stat.overdue-s .num{color:var(--red)}
.stat.progress .num{color:var(--or)}
.stat.done .num{color:var(--gr)}
.stat.waiting.hot{background:var(--acs);border-color:var(--ac)}
.stat.overdue-s.hot{background:var(--reds);border-color:var(--red)}
.stat.on{border-color:var(--tx);border-width:2px;padding:11px 13px}
.stat.on .lab{color:var(--tx)}
.stat.zero .num{color:var(--mu)}

/* tools */
.tools{display:flex;gap:10px;align-items:center;margin:16px 0 10px}
.search{flex:1;margin:0;position:relative}
.search input{margin:0;min-height:44px;border-radius:12px;padding:8px 12px;font-size:16px;-webkit-appearance:none;appearance:none}
.chips{display:flex;gap:8px;overflow-x:auto;padding:2px 0 8px;margin:0 -16px;padding-left:16px;padding-right:16px;scrollbar-width:none}
.chips::-webkit-scrollbar{display:none}
.chip{flex:none;border-radius:999px}
.chip .n{font-size:12px;color:var(--mu);font-variant-numeric:tabular-nums}
.chip.on{background:var(--tx);border-color:var(--tx);color:var(--bg)}
.chip.on .n{color:var(--bg)}

/* sections */
section{margin:26px 0;scroll-margin-top:90px}
section h2{font-size:19px;margin:0 0 12px;display:flex;gap:8px;align-items:center}
section.attn h2{font-size:21px}
section.late h2{color:var(--red)}
.cnt,.pill{display:inline-flex;align-items:center;font-size:12px;font-weight:600;color:var(--mu);background:var(--bg2);border-radius:999px;padding:3px 9px;line-height:1.4}
.late .cnt{background:var(--reds);color:var(--red)}
.attn .cnt{background:var(--acs);color:var(--ac)}
.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.sec-muted .card{box-shadow:none}
.sec-muted .title{font-weight:600}
.sec-done .title{color:var(--mu);font-weight:600}

/* cards */
.card{background:var(--card);border:1px solid var(--ln);border-radius:var(--r);padding:14px 16px;box-shadow:var(--sh);display:flex;flex-direction:column;gap:10px;position:relative;min-width:0}
.card.waiting{border-left:4px solid var(--ac)}
.card.progress{border-left:4px solid var(--or)}
.card.done{border-left:4px solid var(--gr)}
.card.late{border-color:var(--red);border-left:4px solid var(--red);background:linear-gradient(var(--reds),var(--reds)),var(--card)}
.attn .card{border-width:1px 1px 1px 4px}
.head{display:flex;align-items:flex-start;gap:8px}
.title{flex:1;min-width:0;font-size:16px;font-weight:650;line-height:1.35;margin:0;overflow-wrap:anywhere}
.edit{flex:none;width:44px;height:44px;margin:-8px -10px -8px 0;display:grid;place-items:center;border:0;border-radius:12px;background:transparent;color:var(--mu);font:inherit;font-size:18px;cursor:pointer;touch-action:manipulation}
.meta{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.project{color:var(--mu);font-size:13px;margin-right:2px}
.pill.st-waiting{background:var(--acs);color:var(--ac)}
.pill.st-progress{background:var(--ors);color:var(--or)}
.pill.st-planned{background:var(--bg2);color:var(--mu)}
.pill.st-done{background:var(--grs);color:var(--gr)}
.agent{background:var(--acs);color:var(--ac)}
.overdue{background:var(--reds);color:var(--red)}
.soon{background:var(--ors);color:var(--or)}
.note{font-size:13.5px;color:var(--mu);margin:0;overflow-wrap:anywhere}
.quick{display:flex;gap:8px;margin-top:auto;padding-top:2px}
.quick .btn{flex:1}
.quick select{flex:1;width:auto;min-height:44px;margin:0;border-radius:12px;font-size:14px;padding:8px 10px}
.quick .btn.go{background:var(--grs);border-color:var(--gr);color:var(--gr);font-weight:600}
.quick .btn.go:hover{background:var(--gr);color:var(--card)}

/* empty states */
.empty{grid-column:1/-1;display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center;color:var(--mu);border:1px dashed var(--ln);border-radius:var(--r);padding:22px 16px;margin:0}
.empty .em-t{color:var(--tx);font-weight:600;font-size:15px}
.empty .em-i{font-size:26px;line-height:1}
.empty .btn{margin-top:8px}
.empty.big{padding:40px 16px}

/* forms */
select,input,textarea{width:100%;border:1px solid var(--ln);background:var(--card);color:var(--tx);border-radius:12px;padding:10px 12px;font:inherit;min-height:44px}
input,textarea,select{font-size:16px}
textarea{min-height:88px;resize:vertical}
label{display:block;font-size:13px;font-weight:600;margin:12px 0 0}
label input,label select,label textarea{margin-top:5px;font-weight:400}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
dialog{border:0;border-radius:var(--r);background:var(--card);color:var(--tx);box-shadow:var(--sh);width:min(94vw,520px);max-height:92vh;overflow:auto;padding:18px}
dialog::backdrop{background:rgba(0,0,0,.45)}
.dialog-head{display:flex;justify-content:space-between;align-items:center}
.dialog-head h2{margin:0;font-size:19px}
.close{width:44px;height:44px;margin:-8px -8px -8px 0;border:0;border-radius:12px;background:none;color:var(--mu);font-size:28px;cursor:pointer;touch-action:manipulation}
.actions{display:flex;justify-content:flex-end;gap:8px;margin-top:18px}
.error{color:var(--red)}
#notice:not(:empty){color:var(--red);background:var(--reds);border-radius:12px;padding:10px 14px;margin:6px 0}

/* login */
.login-page{min-height:100vh;min-height:100dvh;display:grid;place-items:center;padding:16px}
.login-card{background:var(--card);border:1px solid var(--ln);border-radius:var(--r);box-shadow:var(--sh);padding:28px;width:min(100%,380px)}
.login-card .logo{margin-bottom:16px}
.login-card h1{margin:0;font-size:22px}
.login-card p{color:var(--mu)}
.login-card p.error{color:var(--red);background:var(--reds);border-radius:12px;padding:10px 14px}
.login-card .primary{width:100%;margin-top:18px}

/* quick add */
.qa{display:flex;gap:8px;margin:16px 0 0}
.qa input{flex:1;margin:0;min-height:48px;border-radius:12px}
.qa .primary{flex:none}
.qprev{display:flex;gap:6px;flex-wrap:wrap;margin:8px 0 0}
.qprev:empty{display:none}

/* view switcher */
.views{display:inline-flex;gap:4px;margin:16px 0 0;padding:4px;background:var(--bg2);border-radius:14px}
.view{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;padding:8px 16px;border:0;border-radius:11px;background:transparent;color:var(--mu);font:inherit;font-size:14px;font-weight:600;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
.view .gl{display:none}
.view.on{background:var(--card);color:var(--tx);box-shadow:var(--sh)}
.stats:empty{display:none}
.sep{color:var(--ln)}
.top .btn.icon{flex:none}

/* progress bar */
.prog{display:flex;align-items:center;gap:10px}
.bar{flex:1;height:8px;border-radius:999px;background:var(--bg2);border:1px solid var(--ln);overflow:hidden}
.bar .fill{display:block;height:100%;background:var(--ac);border-radius:999px;transition:width .3s}
.bar.full .fill{background:var(--gr)}
.ptxt{flex:none;font-size:12.5px;font-weight:600;color:var(--mu);font-variant-numeric:tabular-nums}
.prog.mini .bar,.bar.mini{height:5px;border:0}
.prog.mini .ptxt{font-size:11px}

/* priority */
.pill.pri-1{background:var(--reds);color:var(--red)}
.pill.pri-2{background:var(--ors);color:var(--or)}
.pill.pri-3{background:var(--bg2);color:var(--mu)}
.pill.auto{margin-left:6px}

/* card details */
.more{align-self:flex-start;min-height:44px;font-size:13px;color:var(--mu)}
.details{display:flex;flex-direction:column;gap:2px}
.stp{display:flex;align-items:center;gap:10px;min-height:44px;margin:0;font-size:14px;font-weight:500;cursor:pointer}
.stp input{flex:none;width:22px;min-height:22px;height:22px;margin:0;accent-color:var(--ac)}
.stp.on .stt{color:var(--mu);text-decoration:line-through}
.hint{margin:0;font-size:12.5px;color:var(--mu);overflow-wrap:anywhere}
.hint.indent{padding-left:32px}
.hint.bad{color:var(--red)}

/* today */
.hero{margin:22px 0 0;padding:16px;border:1px solid var(--ln);border-radius:var(--r);background:var(--card);box-shadow:var(--sh);display:flex;flex-direction:column;gap:8px}
.hero h2{margin:0;font-size:22px}

/* board */
.boardwrap>.hint{margin:16px 0 10px}
.board{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;align-items:start}
.col{background:var(--bg2);border:2px solid transparent;border-radius:var(--r);padding:10px;display:flex;flex-direction:column;gap:10px;min-width:0;min-height:120px}
.col h2{font-size:16px;margin:0;display:flex;gap:8px;align-items:center}
.col.over{border-color:var(--ac);background:var(--acs)}
.card.dragging{opacity:.5}
.card.kb{cursor:grab}
.empty.mini{padding:12px;font-size:13px}

/* calendar */
.calbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:18px 0 12px}
.caltitle{margin:0;font-size:19px;min-width:0;flex:1;white-space:nowrap}
.btn.icon{min-width:44px}
.seg{display:inline-flex;gap:0;border:1px solid var(--ln);border-radius:12px;overflow:hidden}
.seg .btn{border:0;border-radius:0}
.seg .btn.on{background:var(--tx);color:var(--bg)}
.mgrid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}
.dow{text-align:center;font-size:12.5px;font-weight:700;color:var(--mu);padding:4px 0}
.day{position:relative;min-height:112px;padding:6px;border:1px solid var(--ln);border-radius:12px;background:var(--card);cursor:pointer;display:flex;flex-direction:column;gap:4px;min-width:0;touch-action:manipulation}
.day.out{background:var(--bg2);color:var(--mu)}
.day.today{border:2px solid var(--ac)}
.day.over{border-color:var(--ac);background:var(--acs)}
.dn{font-size:13px;font-weight:700}
.day.today .dn{color:var(--ac)}
.dot{display:none;align-self:center;align-items:center;justify-content:center;min-width:24px;height:24px;border-radius:999px;background:var(--acs);color:var(--ac);font-size:12px;font-weight:700}
.dot.late{background:var(--reds);color:var(--red)}
.evs{display:flex;flex-direction:column;gap:4px;min-width:0}
.ev{display:flex;flex-direction:column;gap:3px;padding:4px 6px;border-radius:8px;background:var(--acs);font-size:12px;cursor:grab;min-width:0}
.ev.progress{background:var(--ors)}
.ev.done{background:var(--grs)}
.ev.late{background:var(--reds)}
.evt{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.more-n{font-size:12px;color:var(--mu)}
.agday h2{font-size:17px}
.daylist{display:flex;flex-direction:column;gap:12px;margin-top:12px}

/* editor sections */
.sect{border:1px solid var(--ln);border-radius:12px;margin:14px 0 0;padding:6px 12px 12px}
.sect legend,.sect summary{font-size:13px;font-weight:700;padding:0 6px}
.sect summary{cursor:pointer;min-height:44px;display:flex;align-items:center}
.step-row{margin:6px 0}
.step-line{display:flex;gap:6px;align-items:center}
.step-line input[type=checkbox]{flex:none;width:24px;min-height:24px;height:24px;margin:0;accent-color:var(--ac)}
.step-line input:not([type=checkbox]){flex:1;min-width:0}
.rule{padding:4px 0 8px}
.hist ul{margin:0;padding:0 0 4px 18px;font-size:13px;color:var(--mu)}
#addStep{margin-top:8px}

/* toast, palette, help */
#toast{position:fixed;left:50%;transform:translateX(-50%);bottom:calc(88px + env(safe-area-inset-bottom));z-index:40;max-width:90vw;padding:10px 16px;border-radius:12px;background:var(--tx);color:var(--bg);font-size:14px;opacity:0;pointer-events:none;transition:opacity .2s}
#toast.on{opacity:1}
dialog.pal{width:min(94vw,560px);padding:12px;margin-top:12vh}
dialog.pal input{margin:0}
#palList{list-style:none;margin:8px 0 0;padding:0;max-height:50vh;overflow:auto}
.palitem{display:flex;justify-content:space-between;gap:12px;align-items:center;width:100%;min-height:44px;padding:8px 10px;border:0;border-radius:10px;background:transparent;color:var(--tx);font:inherit;text-align:left;cursor:pointer}
#palList .sel .palitem,.palitem:hover{background:var(--acs)}
.pt{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ps{flex:none;font-size:12.5px;color:var(--mu)}
.keys{display:grid;grid-template-columns:auto 1fr;gap:8px 16px;margin:14px 0}
.keys dt{font-weight:600}
.keys dd{margin:0;color:var(--mu)}
kbd{font:inherit;font-size:12.5px;padding:1px 6px;border:1px solid var(--ln);border-radius:6px;background:var(--bg2)}
dialog h3{font-size:15px;margin:12px 0 6px}

/* one-tap priority */
.pri-btn{display:inline-flex;align-items:center;min-height:44px;margin:-8px 0;padding:0 2px;border:0;border-radius:999px;background:transparent;color:inherit;font:inherit;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
.pill.pri-none{background:transparent;border:1px dashed var(--ln);color:var(--mu);padding:2px 8px}
.prilist{display:flex;flex-direction:column;gap:8px;margin-top:12px}
.priopt{justify-content:space-between;width:100%}
.priopt.on{border-color:var(--ac);background:var(--acs)}
dialog.sheet{width:min(94vw,380px)}

/* decision question */
.decision{display:flex;flex-direction:column;gap:8px;padding:12px;border-radius:14px 14px 14px 4px;background:var(--acs);border:1px solid color-mix(in srgb,var(--ac) 35%,transparent)}
.dq{margin:0;display:flex;flex-direction:column;gap:2px}
.dwho{font-size:12px;font-weight:700;color:var(--ac)}
.dqt{font-weight:650;overflow-wrap:anywhere}
.dopts{display:flex;flex-wrap:wrap;gap:8px}
.dopts>*{flex:1 1 auto}
.decision .btn,.decision .primary{white-space:normal;text-align:center}
.decision>.btn{align-self:flex-start}
.btn.danger{background:var(--red);border-color:var(--red);color:var(--card);font-weight:600}
.dtext{display:flex;gap:8px}
.dtext input{flex:1;min-width:0;margin:0}
.dcom summary{min-height:44px;display:flex;align-items:center;font-size:13px;font-weight:600;color:var(--mu);cursor:pointer}
.dcom textarea{min-height:64px}
.dans{margin:0;overflow-wrap:anywhere}
.dlab{color:var(--mu)}
.decbox{margin-top:12px}

/* result links */
.results{display:flex;flex-wrap:wrap;gap:6px;align-items:center;min-width:0}
.rl{font-size:12px;font-weight:700;color:var(--mu);margin-right:2px}
.rchip{display:inline-flex;align-items:center;gap:6px;min-height:44px;max-width:100%;min-width:0;padding:6px 12px;border:1px solid var(--ln);border-radius:999px;background:var(--bg2);color:var(--tx);font:inherit;font-size:13px;text-decoration:none;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
a.rchip{color:var(--ac)}
.rchip.txt{cursor:default}
.rt{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.ri{flex:none;color:var(--mu)}
.res-row{display:flex;flex-direction:column;gap:6px;padding:8px 0;border-bottom:1px solid var(--ln)}
.res-row input,.res-row select{margin:0}
.step-line select{flex:1;min-width:0;margin:0}
#addResult{margin-top:8px}
.chk{display:flex;align-items:center;gap:10px;min-height:44px;margin:0;font-weight:500}
.chk input{flex:none;width:22px;min-height:22px;height:22px;margin:0;accent-color:var(--ac)}

/* job queue */
.job-view{display:grid;grid-template-columns:minmax(0,1fr);gap:24px;margin-top:22px}
.job-form{background:var(--card);border:1px solid var(--ln);border-radius:var(--r);box-shadow:var(--sh);padding:16px}
.job-form h2,.job-list h2{font-size:19px;margin:0 0 4px;display:flex;gap:8px;align-items:center}
.job-count{text-align:right;margin:4px 0 0}.job-list{display:flex;flex-direction:column;gap:12px}
.card.job.laukia{border-left:4px solid var(--ac)}.card.job.vykdoma{border-left:4px solid var(--or)}.card.job.atlikta{border-left:4px solid var(--gr)}.card.job.klaida{border-left:4px solid var(--red)}
.pill.st-job-laukia{background:var(--acs);color:var(--ac)}.pill.st-job-vykdoma{background:var(--ors);color:var(--or)}.pill.st-job-atlikta{background:var(--grs);color:var(--gr)}.pill.st-job-klaida{background:var(--reds);color:var(--red)}.pill.st-job-atšaukta{background:var(--bg2);color:var(--mu)}
.job-result summary{cursor:pointer;font-size:13px;font-weight:700;color:var(--mu);min-height:36px;display:flex;align-items:center}.job-result pre{margin:4px 0 0;white-space:pre-wrap;overflow-wrap:anywhere;font:12px/1.45 ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--tx)}

/* technical steps, archive */
.btn.more.tech{margin-top:4px}
.archrow{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:8px 0 26px}
.archhint{margin:-4px 0 12px}

/* tablet and up */
@media(min-width:900px){
  .stats{grid-template-columns:repeat(4,minmax(0,1fr))}
  .stat{min-height:88px}
  .stat .num{font-size:34px}
  .chips{flex-wrap:wrap;overflow:visible;margin:0;padding:2px 0 8px}
  .tools{max-width:640px}
  .search{max-width:360px}
  .stat:hover,.chip:hover,.btn:hover{border-color:var(--ac)}
  .edit:hover{background:var(--bg2);color:var(--tx)}
}

/* phones */
@media(max-width:640px){
  .grid{grid-template-columns:1fr}
  .form-grid{grid-template-columns:1fr}
  .logout .lbl{display:none}
  .logout .ico{display:inline}
  .logout{min-width:44px;padding:8px}
  .tools{flex-wrap:nowrap}
  .primary.add{position:fixed;right:16px;bottom:calc(84px + env(safe-area-inset-bottom));z-index:9;min-width:56px;min-height:56px;padding:0;border-radius:999px;box-shadow:var(--sh)}
  .primary.add .plus{font-size:30px;line-height:1}
  .primary.add .lbl{display:none}
  .actions .btn,.actions .primary{flex:1}
  body{padding-bottom:calc(150px + env(safe-area-inset-bottom))}
  .views{position:fixed;left:0;right:0;bottom:0;z-index:10;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:2px;padding:6px 8px calc(6px + env(safe-area-inset-bottom));background:color-mix(in srgb,var(--bg) 90%,transparent);backdrop-filter:saturate(1.6) blur(14px);-webkit-backdrop-filter:saturate(1.6) blur(14px);border-top:1px solid var(--ln);margin:0}
  .view{flex-direction:column;gap:0;min-height:52px;border:0;background:transparent;font-size:12px;padding:4px 2px}
  .view .gl{display:block;font-size:18px;line-height:1.1}
  .view.on{color:var(--ac);font-weight:700}
  .sep{display:none}
  .sub{display:flex;flex-direction:column}
  .qa .primary{padding:8px 14px}
  .mgrid{gap:3px}
  .day{min-height:54px}
  .evs{display:none}
  .dot{display:inline-flex}
  dialog#dayDialog,dialog#priDialog{margin:auto 0 0;width:100%;max-width:none;border-radius:var(--r) var(--r) 0 0;max-height:86vh;padding-bottom:calc(18px + env(safe-area-inset-bottom))}
  dialog.pal{margin-top:8vh}
  .board{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;margin:0 -16px;padding:0 16px 8px}
  .col{flex:none;width:86%;scroll-snap-align:center}
  .calbar{gap:8px}
  .caltitle{order:-1;flex-basis:100%;white-space:normal}
}

@media(min-width:641px) and (max-width:899px){
  .board{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* morning summary and alerts (Šiandien) */
.sum{margin-top:12px}
.sum h3{margin:0;font-size:16px}
.sumlist,.sumsub{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.sumsub{margin-top:6px;padding-left:14px;gap:6px;font-size:13.5px;color:var(--mu)}
.sumsub .prog{margin-top:2px;max-width:260px}
.tone-bad>span:first-child{color:var(--red);font-weight:600}
.tone-warn>span:first-child{color:var(--or);font-weight:600}
.hint.calm{margin:14px 2px 0}
.alert-list{display:flex;flex-direction:column;gap:8px}
.alert{background:var(--card);border:1px solid var(--ln);border-left:4px solid var(--ac);border-radius:var(--r);padding:12px 14px;box-shadow:var(--sh);min-width:0}
.alert.warning{border-left-color:var(--or)}
.alert.critical{border-color:var(--red);border-left-color:var(--red);background:linear-gradient(var(--reds),var(--reds)),var(--card)}
.abody{min-width:0}
.atitle{font-weight:600;overflow-wrap:anywhere}
.alert .acts{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}

/* website health (Šiandien) */
.sites{margin-top:18px}
.site-list{display:flex;flex-direction:column;gap:8px}
.site{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;background:var(--card);border:1px solid var(--ln);border-radius:var(--r);padding:10px 14px;box-shadow:var(--sh);min-width:0}
.sdot{width:12px;height:12px;border-radius:999px;background:var(--mu);flex:none}
.site.green .sdot{background:var(--gr)}
.site.yellow .sdot{background:var(--or)}
.site.red .sdot{background:var(--red)}
.sname{font-weight:600;overflow-wrap:anywhere;color:var(--tx)}
.smeta{font-size:12.5px;color:var(--mu)}
