@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-vietnamese-wght-normal-BUzh504Q.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-latin-ext-wght-normal-CcLUaPy7.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-latin-wght-normal-DLoelf7F.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--mist:#e4ebe6;--paper:#fbfcf9;--pine:#1f4d3f;--pine-2:#2a6553;--ink:#1a2e29;--muted:#5b6d66;--line:#cbd5ce;--edge:#8fa39a;--grid:#e2e8e4;--grid-major:#cbd6cf;--shade:rgba(31,77,63,.16);--sage:#bfe08f;--blue:#2b6f94;--amber:#eba53a;--red:#c7365f;--blue-soft:#e3eff5;--amber-soft:#fdf1dc;--red-soft:#fae6ec;--green-soft:#e6f3d6;--display:"Bricolage Grotesque Variable","Segoe UI",system-ui,sans-serif;--ease:cubic-bezier(.2,.8,.2,1)}*{box-sizing:border-box}html,body{overscroll-behavior:none}body{margin:0;font-family:Segoe UI,system-ui,-apple-system,sans-serif;background:var(--mist);color:var(--ink);-webkit-tap-highlight-color:transparent}button,input,select{font:inherit}input,select,textarea{font-size:16px!important}.side .pick-other input,.sheet-body .pick-other input{font-size:24px!important}button{touch-action:manipulation;background:var(--pine);color:#fff;border:0;border-radius:10px;padding:9px 14px;cursor:pointer;transition:transform .12s var(--ease),background-color .2s,box-shadow .2s,color .2s}@media(hover:hover){button:hover:not(:disabled){background:var(--pine-2)}}button:active:not(:disabled){transform:scale(.95)}button.alt{background:var(--paper);color:var(--ink);border:1px solid var(--line)}@media(hover:hover){button.alt:hover:not(:disabled){background:#fff;border-color:var(--edge)}}button:disabled{opacity:.4;cursor:default}button:focus-visible{outline:3px solid var(--blue);outline-offset:2px}input,select{padding:8px 10px;border:1px solid var(--line);border-radius:10px;background:var(--paper);color:var(--ink);transition:border-color .2s,box-shadow .2s}input:focus,select:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-soft)}.top{display:flex;flex-wrap:wrap;gap:10px;align-items:center;position:sticky;top:0;z-index:5;padding:calc(10px + env(safe-area-inset-top)) calc(16px + env(safe-area-inset-right)) 10px calc(16px + env(safe-area-inset-left));background:var(--pine);color:#fff;box-shadow:0 2px 12px var(--shade)}.top h1{font-family:var(--display);font-size:21px;font-weight:700;letter-spacing:-.01em;margin:0;flex:1}.top h1 .ver{font-family:system-ui,sans-serif;font-size:12px;font-weight:500;opacity:.6;margin-left:4px}.top button.alt{background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.22)}@media(hover:hover){.top button.alt:hover:not(:disabled){background:#fff3;border-color:#fff6}}.conn{display:inline-flex;align-items:center;gap:7px;font-size:13px;font-weight:600;padding:5px 11px;border-radius:999px;white-space:nowrap}.conn .dot{width:8px;height:8px;border-radius:50%;background:currentColor}.conn.ok{background:var(--green-soft);color:#2f6b1c}.conn.ok .dot{animation:live 2s ease-out infinite}.conn.sync{background:var(--amber-soft);color:#8a5a00}.conn.sync .dot{animation:blink 1s steps(2) infinite}.conn.off{background:var(--red-soft);color:var(--red)}.main{display:grid;grid-template-columns:1fr 320px;gap:14px;padding:12px 16px 16px}.plan{display:block;width:100%;height:auto;max-height:calc(100vh - 160px);max-height:calc(100dvh - 160px);background:var(--paper);border-radius:18px;box-shadow:0 1px 0 var(--line),0 10px 30px var(--shade);touch-action:none;user-select:none;-webkit-user-select:none}.plan text{font-family:var(--display)}.side{background:var(--paper);border-radius:18px;box-shadow:0 1px 0 var(--line),0 10px 30px var(--shade);padding:16px;display:flex;flex-direction:column;gap:10px;align-self:start}.side label{display:flex;flex-direction:column;gap:4px;font-size:14px;min-width:0}.side input,.side select{width:100%;min-width:0}.side>*{animation:rise .28s var(--ease) both}.err{color:var(--red);font-size:14px;font-weight:600}.warn{background:var(--amber-soft);border-left:4px solid var(--amber);border-radius:10px;padding:8px 10px;font-size:14px}.login{max-width:340px;margin:14vh auto;display:flex;flex-direction:column;gap:12px;padding:28px 24px;background:var(--paper);border-radius:22px;box-shadow:0 18px 50px var(--shade);border-top:6px solid var(--pine);animation:rise .4s var(--ease) both}.login h2{font-family:var(--display);font-size:26px;margin:0 0 4px;color:var(--pine)}.legend{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:13px;color:var(--muted);padding:2px 16px 8px}.legend i{display:inline-block;width:14px;height:14px;border-radius:5px;margin-right:5px;vertical-align:-2px;box-shadow:inset 0 0 0 1px #1a2e291f}@media(max-width:800px){.main{grid-template-columns:1fr}}@media(min-width:801px){.side{position:sticky;top:76px;max-height:calc(100vh - 92px);max-height:calc(100dvh - 92px);overflow:auto;overscroll-behavior:contain}}.tabs{display:flex;gap:6px;flex-wrap:wrap;padding:12px 16px 6px}.tabs button{border-radius:999px;padding:8px 18px;font-weight:600}.tabs button.alt{background:transparent;border-color:transparent;color:var(--muted)}@media(hover:hover){.tabs button.alt:hover:not(:disabled){background:#1f4d3f14;color:var(--ink);border-color:transparent}}.rlist{display:flex;flex-direction:column;gap:6px;max-height:260px;overflow:auto;padding:2px}.rc{border:1px solid var(--line);border-left:4px solid var(--blue);border-radius:10px;padding:7px 10px;text-align:left;background:var(--paper);color:var(--ink);font-size:14px}@media(hover:hover){.rc:hover:not(:disabled){background:#fff;border-color:var(--edge);border-left-color:var(--blue)}}.rc.on{border-color:var(--blue);background:var(--blue-soft);box-shadow:0 0 0 2px var(--blue-soft)}@media(hover:hover){.rc.on:hover:not(:disabled){background:var(--blue-soft)}}.rc small{color:var(--muted)}.stepper{display:flex;align-items:center;gap:10px}.stepper div{display:flex;flex-direction:column;align-items:center;gap:3px}.stepper b{font-family:var(--display);font-size:28px;min-width:38px;text-align:center;font-variant-numeric:tabular-nums}.stepper span{font-size:20px;font-weight:600}button.step{padding:3px 22px;font-size:12px}.banner{margin:10px 16px 0;padding:9px 14px;border-radius:12px;font-size:14px;animation:rise .3s var(--ease) both}.banner.sync{background:var(--amber-soft);border-left:4px solid var(--amber)}.banner.off{background:var(--red-soft);border-left:4px solid var(--red)}.info{background:var(--blue-soft);border-left:4px solid var(--blue);border-radius:10px;padding:8px 10px;font-size:14px}.hint{font-size:14px;color:var(--muted)}.settings{border-top:1px solid var(--line);padding-top:12px;display:flex;flex-direction:column;gap:10px}.pad,.sess{display:flex;flex-direction:column;gap:10px}.pad-head{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.pad-head b{font-family:var(--display);font-size:22px}.pad-head span{color:var(--muted);font-size:14px;text-align:right}.pad-q{font-size:16px;font-weight:600}.pick{display:grid;grid-template-columns:repeat(6,1fr);gap:6px}.pick>button{min-height:50px;padding:0;font-family:var(--display);font-size:21px;font-weight:700;background:var(--paper);color:var(--ink);border:1px solid var(--line)}@media(hover:hover){.pick>button:hover:not(:disabled){background:#fff;border-color:var(--edge)}}.pick>button.on,.pick>button.on:hover:not(:disabled){background:var(--pine);color:#fff;border-color:var(--pine)}.pick>button.on{animation:pop .22s var(--ease)}.pick>button.pick-more{grid-column:1/-1;min-height:40px;font-family:inherit;font-size:15px;font-weight:600}.pick-other{grid-column:1/-1;display:flex;gap:8px}.pick-other button{min-width:56px;min-height:48px;font-size:24px;padding:0}.side .pick-other input{flex:1;width:auto;text-align:center;font-size:24px;font-weight:700}.pad-main{min-height:66px;font-size:20px;font-weight:700;background:var(--blue);box-shadow:0 6px 16px #2b6f944d}@media(hover:hover){.pad-main:hover:not(:disabled){background:#327fa8}}.pad-row{display:flex;gap:8px;flex-wrap:wrap}.pad-row button{flex:1;min-height:48px}.sess-timer{font-family:var(--display);font-size:56px;font-weight:800;line-height:1;letter-spacing:-.02em;font-variant-numeric:tabular-nums;color:var(--blue);transition:color .5s}.sess-sub{font-size:15px}.lvl-warn{color:#a8690c}.lvl-over{color:var(--red)}.sess-timer.lvl-over{animation:breathe 2.4s ease-in-out infinite}button.big{min-height:56px;font-size:18px;font-weight:700;box-shadow:0 6px 16px var(--shade)}button.armed,button.armed:hover:not(:disabled){background:var(--red);color:#fff;border-color:var(--red);animation:nudge .35s var(--ease)}@media(max-width:800px){.side{position:sticky;bottom:0;max-height:55vh;overflow:auto;border-radius:20px 20px 0 0;box-shadow:0 -8px 24px var(--shade)}}.main.nopanel{grid-template-columns:1fr}.planwrap{position:relative;min-width:0}.zoom{position:absolute;top:10px;right:10px;display:flex;gap:6px}.zoom button{min-width:44px;min-height:44px;padding:0 10px;font-size:22px;line-height:1;border-radius:12px;box-shadow:0 3px 10px var(--shade)}.zoom button.fit{font-size:14px}.banner.day{background:var(--blue-soft);border-left:4px solid var(--blue)}.card{background:var(--blue-soft);border-left:4px solid var(--blue);border-radius:12px;padding:10px 12px;font-size:14px;display:flex;flex-direction:column;gap:2px}.card.st-completed,.card.st-cancelled,.card.st-no_show{background:#eef2ef;border-left-color:var(--edge)}.badge{display:inline-block;font-size:12px;font-weight:700;padding:3px 10px;border-radius:999px;background:#dfe6e1;margin-top:2px}.badge.st-cancelled,.badge.st-no_show{background:var(--red-soft);color:var(--red)}.badge.st-completed{background:var(--green-soft);color:#2f6b1c}.badge.st-seated{background:var(--blue);color:#fff}.rc.st-seated{border-left-color:var(--pine)}.rc.st-completed,.rc.st-cancelled,.rc.st-no_show{background:#eef2ef;color:var(--muted);border-left-color:var(--line)}.rc.st-cancelled b,.rc.st-no_show b{text-decoration:line-through}.rgroup summary{cursor:pointer;font-size:14px;font-weight:600;padding:6px 0;min-height:32px;color:var(--muted)}.rgroup[open]>.rlist{animation:rise .25s var(--ease) both}.rgroup .rlist{max-height:200px}.form-tables{font-size:14px;border:1.5px dashed var(--edge);border-radius:12px;padding:8px 10px}.err-box{background:var(--red-soft);border-left:4px solid var(--red);border-radius:10px;padding:8px 10px;font-size:14px}.side label.consent{flex-direction:row;align-items:flex-start;gap:8px;font-size:14px}.side label.consent input{width:22px;height:22px;flex:none;margin:0;accent-color:var(--pine)}.plan,.plan *{user-select:none;-webkit-user-select:none;-webkit-user-drag:none;-webkit-touch-callout:none}.tbl .shadow{fill:var(--shade)}.tbl .shape{transform-box:fill-box;transform-origin:center;transition:fill .5s ease,stroke .3s ease,stroke-width .2s ease,transform .15s var(--ease)}.tbl:active .shape{transform:scale(.95)}.tbl.on .shape{animation:pop .25s var(--ease)}.tbl.st-late .shape{animation:ants .9s linear infinite}.tbl.st-late.on .shape{animation:pop .25s var(--ease)}@keyframes rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes pop{0%{transform:scale(1)}45%{transform:scale(1.07)}to{transform:scale(1)}}@keyframes ants{to{stroke-dashoffset:-32}}@keyframes live{0%{box-shadow:0 0 #2f6b1c8c}to{box-shadow:0 0 0 7px #2f6b1c00}}@keyframes blink{50%{opacity:.25}}@keyframes breathe{50%{opacity:.55}}@keyframes nudge{0%,to{transform:translate(0)}25%{transform:translate(-3px)}75%{transform:translate(3px)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}html,body{overflow-x:hidden}body:has(.app.phone){overflow:hidden;height:100%;overscroll-behavior:none}.app.phone{position:fixed;inset:0;display:flex;flex-direction:column;overflow:hidden;background:var(--mist)}.app.phone .top{position:relative;flex:none;flex-wrap:nowrap;gap:8px;padding-top:calc(8px + env(safe-area-inset-top));padding-bottom:8px}.app.phone .top h1{font-size:18px;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app.phone .menu-btn{flex:none;min-width:44px;min-height:40px;padding:0 10px;font-size:20px}.menu-backdrop{position:fixed;inset:0;z-index:20}.menu{position:absolute;right:calc(10px + env(safe-area-inset-right));top:calc(100% + 6px);z-index:21;display:flex;flex-direction:column;gap:6px;min-width:220px;padding:10px;background:var(--paper);border-radius:16px;box-shadow:0 14px 40px #1a2e2947;animation:rise .2s var(--ease) both}.menu button.alt,.top .menu button.alt{background:var(--paper);color:var(--ink);border:1px solid var(--line);min-height:46px;text-align:left}.menu .ver{color:var(--muted);text-align:right;opacity:1;margin:0}.app.phone .banner{flex:none;margin:8px 12px 0}.app.phone .tabs{flex:none;flex-wrap:nowrap;overflow-x:auto;padding:8px 12px 4px;scrollbar-width:none;overscroll-behavior-x:contain}.app.phone .tabs::-webkit-scrollbar{display:none}.app.phone .tabs button{flex:none;padding:7px 14px}.app.phone .legend{flex:none;flex-wrap:nowrap;overflow-x:auto;padding:2px 12px 6px;font-size:12px;white-space:nowrap;scrollbar-width:none;overscroll-behavior-x:contain}.app.phone .legend::-webkit-scrollbar{display:none}.phone-body{flex:1;min-height:0;position:relative}.phone-pane{height:100%}.phone-pane[hidden]{display:none}.app.phone .planwrap{height:100%;padding:4px 10px 10px}.app.phone .plan{width:100%;height:100%;max-height:none;border-radius:16px}.app.phone .zoom{top:12px;right:18px;gap:5px}.app.phone .zoom button{min-width:40px;min-height:40px;font-size:20px;border-radius:12px}.app.phone .zoom button.fit{font-size:12px}.phone-list{height:100%;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding:8px 12px 24px;display:flex;flex-direction:column;gap:10px}.phone-list .settings{border-top:0;padding-top:0}.phone-list .rlist,.phone-list .rgroup .rlist{max-height:none;overflow:visible}.phone-list label{display:flex;flex-direction:column;gap:4px;font-size:14px}.sheet{position:absolute;left:0;right:0;bottom:0;z-index:10;display:flex;flex-direction:column;max-height:78%;background:var(--paper);border-radius:22px 22px 0 0;box-shadow:0 -10px 34px #1a2e2938;animation:sheet-up .26s var(--ease) both}.sheet.min{max-height:none}.sheet-bar{flex:none;display:flex;align-items:center;gap:8px;padding:8px 10px 4px}.sheet-bar .grip{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;background:transparent;border:0;color:var(--muted);font-size:12px;padding:4px 0}.sheet-bar .grip i{display:block;width:44px;height:5px;border-radius:3px;background:var(--line)}@media(hover:hover){.sheet-bar .grip:hover:not(:disabled){background:transparent}}.sheet-bar .close{flex:none;min-width:40px;min-height:40px;padding:0;border-radius:50%;font-size:16px}.sheet-body{overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:4px 14px calc(16px + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:10px}.sheet-body>*{animation:rise .24s var(--ease) both}.sheet-body label{display:flex;flex-direction:column;gap:4px;font-size:14px;min-width:0}.sheet-body input,.sheet-body select{width:100%;min-width:0}.sheet-body .pick-other input{flex:1;width:auto;text-align:center;font-size:24px;font-weight:700}.sheet-body label.consent{flex-direction:row;align-items:flex-start;gap:8px}.sheet-body label.consent input{width:22px;height:22px;flex:none;margin:0;accent-color:var(--pine)}.sheet-body .sess-timer{font-size:46px}.bottomnav{flex:none;display:flex;gap:8px;padding:8px 12px calc(8px + env(safe-area-inset-bottom));background:var(--paper);box-shadow:0 -1px 0 var(--line)}.bottomnav button{flex:1;min-height:46px;border-radius:12px;background:transparent;color:var(--muted);font-weight:700}@media(hover:hover){.bottomnav button:hover:not(:disabled){background:#1f4d3f14}}.bottomnav button.on,.bottomnav button.on:hover:not(:disabled){background:var(--pine);color:#fff}.banner.rotate{background:var(--blue-soft);border-left:4px solid var(--blue);font-weight:600}.phone-body.editing{display:flex;flex-direction:column}.phone-body.editing .phone-pane{flex:1;min-height:0;height:auto}.phone-body.editing .sheet{position:static;flex:none;max-height:48%;border-radius:18px 18px 0 0;animation:none}.sheet-title{flex:1;font-family:var(--display);font-size:18px;padding-left:6px}@media(orientation:landscape){.phone-body.editing{flex-direction:row}.phone-body.editing .sheet{width:min(320px,42%);max-height:none;height:100%;border-radius:18px 0 0}}@keyframes sheet-up{0%{transform:translateY(40%);opacity:0}to{transform:none;opacity:1}}@media(max-height:500px)and (orientation:landscape){.app.phone .legend{display:none}.app.phone .top{padding-top:calc(4px + env(safe-area-inset-top));padding-bottom:4px}.app.phone .tabs{padding-top:4px}.sheet{left:auto;top:0;bottom:0;width:min(400px,50%);max-height:none;border-radius:18px 0 0 18px;animation-name:sheet-left}.sheet.min{top:auto;width:auto;border-radius:18px 0 0}.bottomnav{padding-top:4px;padding-bottom:calc(4px + env(safe-area-inset-bottom))}.bottomnav button{min-height:38px}.app.phone .zoom{left:18px;right:auto}}@keyframes sheet-left{0%{transform:translate(30%);opacity:0}to{transform:none;opacity:1}}.login-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.login-head h2{margin:0}.lang-btn{font-weight:800;letter-spacing:.06em;min-width:52px}.news-btn{display:inline-flex;align-items:center;gap:8px;background:var(--amber);color:var(--ink);border:none;border-radius:999px;padding:7px 14px;font-weight:700;font-size:14px;min-height:36px}.news-btn i{width:9px;height:9px;border-radius:50%;background:var(--red);box-shadow:0 0 0 3px #c7365f40;animation:live 1.6s ease-in-out infinite}.news-panel{position:fixed;top:calc(64px + env(safe-area-inset-top));right:calc(12px + env(safe-area-inset-right));z-index:21;width:min(380px,calc(100vw - 24px));max-height:70vh;overflow:auto;display:flex;flex-direction:column;gap:8px;padding:14px;background:var(--paper);border-radius:16px;box-shadow:0 14px 40px #1a2e2947;animation:rise .2s var(--ease) both}.news-item{display:flex;flex-direction:column;align-items:flex-start;gap:2px;text-align:left;background:var(--paper);color:var(--ink);border:1px solid var(--line);border-left:4px solid var(--blue);border-radius:12px;padding:10px 12px;font-size:14px}.news-item.off{border-left-color:var(--red)}.news-kind{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--blue)}.news-item.off .news-kind{color:var(--red)}.news-banners{display:flex;flex-direction:column;gap:6px;margin:10px 16px 0}.news-banners>.alt{align-self:flex-start}.banner.news{margin:0;display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;width:100%;text-align:left;background:var(--blue-soft);color:var(--ink);border:none;border-left:4px solid var(--blue);font-size:15px;font-weight:600;cursor:pointer;min-height:44px}.banner.news.off{background:var(--red-soft);border-left-color:var(--red)}.banner.news small{font-weight:500;color:var(--muted)}.src-badge{display:inline-block;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:2px 7px;border-radius:999px;margin-right:4px;vertical-align:1px;background:var(--mist);color:var(--pine)}.src-badge.online{background:var(--blue-soft);color:var(--blue)}.src-badge.new{background:var(--amber);color:var(--ink)}.prm{position:fixed;inset:0;z-index:30;background:var(--mist);display:flex;flex-direction:column;animation:rise .2s var(--ease) both}.prm-bar{display:flex;align-items:center;gap:10px;padding:calc(10px + env(safe-area-inset-top)) calc(16px + env(safe-area-inset-right)) 10px calc(16px + env(safe-area-inset-left));background:var(--pine);color:#fff}.prm-bar b{flex:1;font-family:var(--display);font-size:21px}.prm-bar button.alt{background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.22)}.prm-body{flex:1;overflow:auto;overscroll-behavior:contain;padding:16px calc(16px + env(safe-area-inset-right)) calc(110px + env(safe-area-inset-bottom)) calc(16px + env(safe-area-inset-left));display:flex;flex-direction:column;gap:14px;align-items:center}.prm-body>*{width:100%;max-width:720px}.prm-sec{background:var(--paper);border-radius:18px;padding:16px 18px;display:flex;flex-direction:column;gap:12px;box-shadow:0 2px 10px var(--shade)}.prm-sec h3{margin:0;font-family:var(--display);font-size:19px;color:var(--pine)}.prm-field{display:flex;flex-direction:column;gap:5px;font-size:14px;font-weight:600}.prm-field input,.prm-field select{font-size:16px}.prm-field.bad input{border-color:var(--red)}.prm-field small{font-weight:400}.prm-toggle{display:flex;gap:12px;align-items:flex-start;font-size:15px}.prm-toggle input{width:24px;height:24px;margin:0;flex:none;accent-color:var(--pine)}.prm-toggle span{display:flex;flex-direction:column;gap:2px}.prm-toggle small{font-weight:400}.prm-time{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.prm-time input{font-size:16px;max-width:160px}.prm-none{display:inline-flex;align-items:center;gap:8px;font-weight:500;font-size:14px}.prm-none input{width:20px;height:20px;margin:0}.prm-closure{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:8px 0;border-top:1px solid var(--line);font-size:14px}.prm-add{display:flex;flex-direction:column;gap:10px;border-top:1px solid var(--line);padding-top:12px}.prm-add>.alt{align-self:flex-start}.prm-save{position:fixed;left:0;right:0;bottom:0;z-index:31;display:flex;flex-direction:column;gap:8px;align-items:center;padding:12px calc(16px + env(safe-area-inset-right)) calc(12px + env(safe-area-inset-bottom)) calc(16px + env(safe-area-inset-left));background:var(--paper);box-shadow:0 -6px 24px var(--shade);animation:rise .2s var(--ease) both}.prm-save>*{width:100%;max-width:720px}.prm-lock{background:var(--paper);border-radius:18px;padding:26px 22px;display:flex;flex-direction:column;gap:12px;max-width:420px!important;margin-top:6vh;box-shadow:0 2px 10px var(--shade)}.prm-lock h2{margin:0;font-family:var(--display);color:var(--pine)}.prm-lock-icon{font-size:28px}.prm-lock label{display:flex;flex-direction:column;gap:5px;font-weight:600;font-size:14px}.prm-body>.prm-save{max-width:none}.banner.mailfail{display:flex;flex-direction:column;gap:4px;background:var(--amber-soft);border-left:4px solid var(--red);font-size:14px}.banner.mailfail small{color:var(--muted)}.banner.mailfail .pad-row{margin-top:4px}.form-mail{display:flex;flex-direction:column;gap:8px;padding:10px;border-radius:12px;background:var(--blue-soft)}.form-mail .pad-row{align-items:center}.form-mail .pad-row button{min-width:56px}body:has(.app:not(.phone)){overflow:hidden;height:100%}.app:not(.phone){position:fixed;inset:0;display:flex;flex-direction:column;overflow:hidden;background:var(--mist)}.app:not(.phone)>*{flex:none;min-width:0}.app:not(.phone)>.top{position:relative}.app:not(.phone)>.main{flex:1 1 auto;min-height:0;grid-template-rows:minmax(0,1fr);padding-bottom:calc(12px + env(safe-area-inset-bottom))}.app:not(.phone) .planwrap{min-height:0;height:100%}.app:not(.phone) .plan{height:100%;max-height:none}.app:not(.phone) .side{position:static;align-self:stretch;height:100%;max-height:none;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;border-radius:18px;box-shadow:0 1px 0 var(--line),0 10px 30px var(--shade)}.app:not(.phone) .side .rlist{max-height:none;overflow:visible}.pad-main.danger{background:var(--paper);color:var(--red);border:2px solid var(--red)}@media(hover:hover){.news-btn:hover:not(:disabled){background:#f3b55a;color:var(--ink)}.banner.news:hover:not(:disabled){background:#d3e6f0;color:var(--ink)}.banner.news.off:hover:not(:disabled){background:#f6d8e1}.news-item:hover:not(:disabled){background:#fff;color:var(--ink)}.pad-main.danger:hover:not(:disabled){background:var(--red-soft);color:var(--red)}.prm-bar button.alt:hover:not(:disabled){background:#fff3;color:#fff;border-color:#fff6}}
