:root{--bg: #07060f;--bg2: #120f2a;--card: rgba(120, 110, 255, .08);--card2: rgba(140, 130, 255, .14);--line: rgba(150, 160, 255, .16);--ink: #f2f4ff;--muted: #9aa6d6;--rosa: #ff4fa3;--ciano: #22d3ee;--azul: #3b82f6;--roxo: #7c3aed;--accent: var(--rosa);--accent-ink: #fff;--accent2: var(--ciano);--ok: #22c55e;--warn: #f59e0b;--danger: #ef4444;--tag-posto-bg: rgba(34, 211, 238, .16);--tag-posto-fg: #7ee8f6;--tag-compra-bg: rgba(255, 79, 163, .18);--tag-compra-fg: #ff9fce;--tag-pref-bg: rgba(59, 130, 246, .2);--tag-pref-fg: #9cc4ff;--danger-text: #ff8a8a;--shadow: 0 12px 32px rgba(0, 0, 0, .45), inset 0 1px 0 rgba(255, 255, 255, .12);--tabs-bg: rgba(7, 6, 15, .6);--toast-bg: #f2f4ff;--toast-ink: #07060f;--fs: 16px;--r: 26px;--pad: 18px;--tabs-h: 64px;color-scheme:dark}*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--bg);color:var(--ink);font:var(--fs)/1.4 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;-webkit-tap-highlight-color:transparent;overscroll-behavior-y:none}body.no-scroll{overflow:hidden}svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex:none}h1,h2,.card-title,.sheet-title,.login h1{font-family:Rajdhani,Segoe UI,system-ui,sans-serif;letter-spacing:.02em}h1{font-size:1.9rem;font-weight:700;margin:0;display:flex;align-items:center;gap:10px;line-height:1.1;text-transform:uppercase;letter-spacing:.06em}h1,.sheet-title{color:#b9b0f5;background:linear-gradient(180deg,#e9e5ff,#b9b0f5 45%,#8b80d8);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(0 0 10px rgba(34,211,238,.28)) drop-shadow(0 1px 0 rgba(0,0,0,.6))}h1 .dot.inline{-webkit-text-fill-color:initial}h2{font-size:1.15rem;font-weight:600;margin:0;color:#c4bcf7;text-transform:uppercase;letter-spacing:.08em}.card-title{font-size:1.2rem;font-weight:600;color:#ddd8ff;letter-spacing:.03em}.sheet-title{font-size:1.45rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em}p{margin:0 0 12px}.muted{color:var(--muted)}.small{font-size:.85rem}.hint{color:var(--muted);font-size:.85rem;margin:0 0 12px}.empty{color:var(--muted);text-align:center;padding:32px 16px;list-style:none}.error{color:var(--danger);min-height:1.4em;margin:8px 0 0}.row{display:flex;align-items:center}.gap{gap:10px}.top{margin-top:20px}.grow{flex:1}.label-row{display:flex;justify-content:space-between;align-items:baseline;margin:4px 0 6px;font-size:.9rem;color:var(--muted)}.shell{display:flex;flex-direction:column;min-height:100dvh}.view{flex:1;max-width:560px;width:100%;margin:0 auto;padding:max(12px,env(safe-area-inset-top)) 16px calc(var(--tabs-h) + env(safe-area-inset-bottom) + 24px)}.tabs{position:fixed;left:0;right:0;bottom:0;height:calc(var(--tabs-h) + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);display:flex;background:var(--tabs-bg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--line);z-index:5}.tab{flex:1;background:none;border:0;color:var(--muted);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font-size:.7rem;font-weight:600;padding:0;border-radius:0}.tab svg{width:24px;height:24px}.tab.on{color:var(--ink)}.tab.on svg{stroke:var(--accent)}.topbar{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:48px;margin-bottom:12px}.topbar .row{gap:4px}.cards{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.card{background:var(--card);border-radius:var(--r);padding:var(--pad);box-shadow:var(--shadow);display:flex;align-items:center;gap:12px;cursor:pointer;transition:transform .1s,background .15s}.card:active{transform:scale(.985);background:var(--card2)}.card>svg{color:var(--muted)}.card-title{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.card.off{opacity:.6}.dot{width:14px;height:14px;border-radius:50%;background:var(--cor, var(--accent));flex:none;box-shadow:0 0 0 4px color-mix(in srgb,var(--cor, var(--accent)) 25%,transparent)}.dot.inline{width:12px;height:12px}.emoji{font-size:1.5rem;width:36px;text-align:center;flex:none}.bloco{margin-top:20px}.bloco h2{margin-bottom:4px}.tags{display:flex;gap:6px;flex-wrap:wrap;margin-top:6px}.tag{font-size:.72rem;font-weight:600;padding:2px 8px;border-radius:999px;background:var(--card2);color:var(--ink);white-space:nowrap}.tag.posto{background:var(--tag-posto-bg);color:var(--tag-posto-fg)}.tag.compra{background:var(--tag-compra-bg);color:var(--tag-compra-fg)}.tag.pref{background:var(--tag-pref-bg);color:var(--tag-pref-fg)}form{width:100%;display:flex;flex-direction:column;gap:12px}label{display:flex;flex-direction:column;gap:6px;font-size:.9rem;color:var(--muted)}label.check{flex-direction:row;align-items:center;gap:10px;color:var(--ink)}input[type=checkbox]{width:22px;height:22px;accent-color:var(--accent)}input:not([type=checkbox]){width:100%;padding:13px 14px;border-radius:14px;border:1px solid var(--line);background:var(--bg2);color:var(--ink);font-size:1rem}input:focus{outline:2px solid var(--accent);outline-offset:1px}button{padding:13px 16px;border-radius:14px;border:0;background:var(--accent);color:var(--accent-ink);font-size:1rem;font-weight:600;cursor:pointer;font-family:inherit}button:disabled{opacity:.6}button.ghost{background:transparent;color:var(--muted);border:1px solid var(--line)}button.danger{background:var(--danger)}button.danger-text{color:var(--danger-text)}button.icon{background:transparent;color:var(--ink);padding:10px;border-radius:12px;display:flex}button.icon:active{background:var(--card)}button.link{background:none;color:var(--muted);padding:0;font-size:.85rem;font-weight:600;text-decoration:underline}.chips{display:flex;gap:8px;flex-wrap:wrap}.chip{padding:8px 14px;border-radius:999px;background:var(--bg2);border:1px solid var(--line);color:var(--muted);font-size:.9rem}.chip.on{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.chip.emoji{font-size:1.2rem;padding:6px 10px}.cores .cor{width:36px;height:36px;border-radius:50%;background:var(--cor);padding:0;border:3px solid transparent}.cores .cor.on{border-color:var(--ink);box-shadow:0 0 0 2px var(--cor)}.seg{display:flex;background:var(--bg2);border:1px solid var(--line);border-radius:14px;padding:4px;gap:4px}.seg button{flex:1;background:transparent;color:var(--muted);padding:10px;border-radius:10px}.seg button.on{background:var(--card2);color:var(--ink)}.dias{display:flex;gap:6px}.dia{flex:1;aspect-ratio:1;padding:0;border-radius:50%;background:var(--bg2);border:1px solid var(--line);color:var(--muted);font-size:.9rem}.dia.on{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.horarios{display:grid;grid-template-columns:1fr 1fr;gap:8px}.hora{flex-direction:row;align-items:center;justify-content:space-between;background:var(--bg2);border:1px solid var(--line);border-radius:12px;padding:6px 6px 6px 12px;color:var(--ink);text-transform:capitalize}.hora input{width:auto;padding:6px 8px;border:0;background:var(--card);font-size:.95rem}.sheet-wrap{position:fixed;inset:0;z-index:20;display:flex;align-items:flex-end;justify-content:center}.sheet-backdrop{position:absolute;inset:0;background:#0000008c;opacity:0;transition:opacity .2s}.sheet{position:relative;width:100%;max-width:560px;max-height:92dvh;overflow:auto;background:var(--bg2);border-radius:22px 22px 0 0;padding:8px 20px calc(24px + env(safe-area-inset-bottom));transform:translateY(100%);transition:transform .22s cubic-bezier(.2,.8,.2,1)}.sheet-wrap.open .sheet-backdrop{opacity:1}.sheet-wrap.open .sheet{transform:none}.sheet-handle{width:40px;height:4px;border-radius:2px;background:var(--line);margin:4px auto 14px}.sheet-title{margin:0 0 14px}.confirm-msg{font-size:1.05rem;margin-bottom:20px}#toasts{position:fixed;left:0;right:0;bottom:calc(var(--tabs-h) + env(safe-area-inset-bottom) + 12px);display:flex;flex-direction:column;align-items:center;gap:8px;z-index:30;pointer-events:none}.toast{background:var(--toast-bg);color:var(--toast-ink);padding:10px 16px;border-radius:999px;font-weight:600;font-size:.9rem;opacity:0;transform:translateY(8px);transition:all .25s;box-shadow:0 6px 24px #00000059}.toast.show{opacity:1;transform:none}.toast.ok{background:var(--ok);color:#052e16}.toast.err{background:var(--danger);color:#fff}.login{display:flex;flex-direction:column;align-items:center;text-align:center;min-height:100dvh;justify-content:center;max-width:420px;margin:0 auto;padding:24px 20px}.login-logo{width:96px;height:96px;margin-bottom:16px;border-radius:24px}.login h1{font-size:2rem;margin-bottom:4px;text-align:center}@media(min-width:720px){.tabs{position:sticky}.shell{flex-direction:column-reverse;max-width:560px;margin:0 auto;min-height:100dvh}.tabs{position:static;border-top:0;border-bottom:1px solid var(--line);height:var(--tabs-h);padding-bottom:0}.view{padding-bottom:40px}#toasts{bottom:24px}}html{background:#07060f}body{background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='17.5' viewBox='0 0 28 49'%3E%3Cpath d='M13.99 9.25l13 7.5v15l-13 7.5L1 31.75v-15l12.99-7.5zM3 17.9v12.7l10.99 6.34 11-6.35V17.9l-11-6.34L3 17.9zM0 15l12.98-7.5V0h-2v6.35L0 12.69v2.3zm0 18.5L12.98 41v8h-2v-6.85L0 35.81v-2.3zM15 0v7.5L27.99 15H28v-2.31h-.01L17 6.35V0h-2zm0 49v-8l12.99-7.5H28v2.31h-.01L17 42.15V49h-2z' fill='%23000' fill-opacity='.16'/%3E%3C/svg%3E") fixed,radial-gradient(90% 45% at 18% -6%,#5a2fd4 0%,rgba(90,47,212,.55) 30%,transparent 62%) fixed,radial-gradient(70% 38% at 88% 14%,rgba(124,58,237,.45) 0%,transparent 60%) fixed,radial-gradient(60% 30% at 40% 42%,rgba(70,35,160,.35) 0%,transparent 65%) fixed,linear-gradient(172deg,#2a1670,#170d3f 28%,#0b0720 58%,#040309) fixed}.card{background:linear-gradient(160deg,#968cff21,#5046b412);border:1px solid var(--line);-webkit-backdrop-filter:blur(18px) saturate(140%);backdrop-filter:blur(18px) saturate(140%)}.card:active{background:var(--card2)}.dot{width:48px;height:48px;display:grid;place-items:center;background:color-mix(in srgb,var(--cor, var(--accent)) 30%,transparent);border:1px solid color-mix(in srgb,var(--cor, var(--accent)) 65%,transparent);box-shadow:0 0 26px color-mix(in srgb,var(--cor, var(--accent)) 55%,transparent),inset 0 1px #ffffff40}.dot:after{content:"💊";font-size:22px}.dot.inline{width:14px;height:14px;box-shadow:0 0 12px var(--cor, var(--accent));border:0;background:var(--cor, var(--accent))}.dot.inline:after{content:""}.emoji{width:48px;height:48px;display:grid;place-items:center;background:#ffffff12;border:1px solid var(--line);border-radius:50%;box-shadow:inset 0 1px #ffffff2e}.tag{background:#ffffff1a}.sheet{background:linear-gradient(180deg,#1a1540,#0e0b24);border-top:1px solid var(--line);box-shadow:0 -20px 60px #00000080}.sheet-handle{background:#ffffff40}button:not(.ghost):not(.icon):not(.link):not(.chip):not(.dia):not(.cor):not(.danger):not(.tab):not(.seg button):not(.periodo-head){background:linear-gradient(135deg,var(--rosa) 0%,#c026d3 55%,var(--roxo) 100%);box-shadow:0 8px 22px #ff4fa34d,inset 0 1px #ffffff40}.chip.on,.dia.on{background:linear-gradient(135deg,var(--ciano),var(--azul));border-color:transparent;color:#04111a;box-shadow:0 6px 18px #22d3ee4d}.seg button.on{background:#22d3ee2e;color:#bff4fb}input:not([type=checkbox]){background:#ffffff0d;border-color:var(--line);box-shadow:inset 0 1px #ffffff0f}input:focus{outline-color:var(--ciano)}input[type=checkbox]{accent-color:var(--ciano)}.tab.on svg{stroke:var(--ciano);filter:drop-shadow(0 0 8px rgba(34,211,238,.7))}.tab.on{color:#bff4fb}.tabs{border-top-color:var(--line)}button.icon{color:#bfc8ff}button.link{color:#7ee8f6}.hora{background:#ffffff0d}.hora input{background:#0000004d}.seg,.chip,.dia{background:#ffffff0d}.hoje-top{align-items:flex-start}.hoje-top .data{margin-top:2px}.anel{position:relative;width:64px;height:64px;display:grid;place-items:center;flex:none}.anel svg{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg)}.anel .trilho{stroke:#ffffff1a;stroke-width:4}.anel .arco{stroke:var(--ciano);stroke-width:4;stroke-dasharray:119.4;stroke-dashoffset:calc(119.4 * (1 - var(--p)));transition:stroke-dashoffset .5s cubic-bezier(.2,.8,.2,1);filter:drop-shadow(0 0 6px rgba(34,211,238,.6))}.anel.cheio .arco{stroke:#4ade80;filter:drop-shadow(0 0 8px rgba(74,222,128,.7))}.anel span{font-family:Rajdhani,sans-serif;font-weight:700;font-size:1.05rem;color:#ddd8ff}.faixa{display:flex;align-items:center;gap:8px;padding:12px 14px;border-radius:18px;margin-bottom:12px;background:#f59e0b1f;border:1px solid rgba(245,158,11,.35);font-size:.92rem}button.mini{padding:8px 12px;font-size:.85rem;border-radius:10px}.termos{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:16px}.termo{display:flex;gap:10px;align-items:center;padding:12px;border-radius:20px;cursor:pointer;background:linear-gradient(160deg,#968cff1f,#5046b40f);border:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:var(--shadow);--cor-n: var(--ok)}.termo:active{background:var(--card2)}.termo .emoji{width:38px;height:38px;font-size:1.15rem}.termo .card-title{font-size:1rem;justify-content:space-between}.termo .dias{font-family:Rajdhani,sans-serif;font-weight:700;font-size:1.15rem;color:var(--cor-n);text-shadow:0 0 10px color-mix(in srgb,var(--cor-n) 70%,transparent)}.termo .barra{height:8px;border-radius:4px;background:#ffffff14;overflow:hidden;margin:6px 0;box-shadow:inset 0 1px 2px #0006}.termo .barra i{display:block;height:100%;width:calc(var(--p) * 100%);border-radius:4px;min-width:4px;background:linear-gradient(90deg,color-mix(in srgb,var(--cor-n) 70%,#000),var(--cor-n));box-shadow:0 0 10px color-mix(in srgb,var(--cor-n) 70%,transparent);transition:width .6s cubic-bezier(.2,.8,.2,1)}.termo.verde{--cor-n: #4ade80}.termo.ambar{--cor-n: #fbbf24}.termo.vermelho{--cor-n: #f87171}.termo.zero{--cor-n: #f87171;animation:pulsa 1.4s ease-in-out infinite}.termo.vazio{opacity:.6}@keyframes pulsa{0%,to{box-shadow:var(--shadow)}50%{box-shadow:0 0 0 3px #f8717173,var(--shadow)}}@media(max-width:380px){.termos{grid-template-columns:1fr}}.periodo-bloco{border-radius:var(--r);margin-bottom:12px;overflow:hidden;background:linear-gradient(160deg,#968cff1a,#5046b40d);border:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:var(--shadow)}.periodo-head{width:100%;display:flex;align-items:center;gap:12px;padding:14px var(--pad);background:transparent;color:var(--ink);text-align:left;border-radius:0;box-shadow:none}.periodo-head>svg{color:var(--muted);transition:transform .2s}.periodo-bloco.exp .periodo-head>svg{transform:rotate(90deg)}.periodo-head .hora{font-family:system-ui,sans-serif;font-weight:500;letter-spacing:0;text-transform:none}.periodo-corpo{display:none;padding:0 12px 12px}.periodo-bloco.exp .periodo-corpo{display:block}.periodo-bloco.done .periodo-head .emoji{box-shadow:0 0 0 2px #4ade80,inset 0 1px #ffffff2e}.doses{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.dose-card{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:18px;cursor:pointer;user-select:none;-webkit-user-select:none;background:#ffffff0d;border:1px solid rgba(255,255,255,.08);transition:transform .15s,opacity .3s,background .3s}.dose-card:active{transform:scale(.98)}.dose-card{touch-action:manipulation}.dose-card.armado{border-color:#f87171;box-shadow:0 0 0 2px #f8717166}.dose-card .check{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;flex:none;border:2px solid rgba(255,255,255,.25);color:transparent;transition:all .25s cubic-bezier(.2,.8,.2,1)}.dose-card .check svg{width:20px;height:20px;stroke-width:3}.dose-card.tomado{opacity:.55;background:#4ade8012;border-color:#4ade8040}.dose-card.tomado .check{background:#4ade80;border-color:#4ade80;color:#052e16;transform:scale(1.08);box-shadow:0 0 16px #4ade8099}.dose-card.tomado .card-title{text-decoration:line-through;text-decoration-color:#fff6}.dose-card.pulado{opacity:.5;border-color:#f871714d}.dose-card.pulado .check{border-color:#f87171;color:#f87171}button.todos{width:100%;margin-top:10px;font-family:Rajdhani,sans-serif;font-size:1.15rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.seq{text-align:center;margin-top:8px}.repor-item{padding:12px;border-radius:16px;background:#ffffff0d;border:1px solid var(--line);display:flex;flex-direction:column;gap:8px}.repor-item label.check .grow{text-align:right}.repor-item .x{color:var(--muted);padding-top:22px}.repor-item label{font-size:.78rem}.repor-item input:not([type=checkbox]){padding:10px 8px;text-align:center}.card.static{cursor:default}.card.static:active{transform:none}
