@font-face{font-family:Cormorant;src:url(fonts/cormorant-latin.woff2) format('woff2');font-display:swap}@font-face{font-family:NotoProto;src:url(fonts/noto-prototype.woff2) format('woff2');font-display:swap}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.55 NotoProto,'Noto Sans TC','PingFang TC',sans-serif;font-variant-numeric:tabular-nums;font-feature-settings:'tnum' 1}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}a{color:var(--link);text-underline-offset:.18em}h1,h2,h3,p{margin:0 0 .65rem}h1{font-size:clamp(2rem,6vw,3.25rem);line-height:1.16}h2{font-size:1.35rem;line-height:1.3}h3{font-size:1.08rem;line-height:1.35}.latin{font-family:Cormorant,Georgia,serif;font-size:1.25em}.num,td,th,time,.metric{font-variant-numeric:tabular-nums;font-feature-settings:'tnum' 1}small,.small{font-size:.875rem}.muted,.hint{color:var(--muted)}.eyebrow{font-size:.75rem;font-weight:700;letter-spacing:.08em;color:var(--link);text-transform:uppercase}.wrap{max-width:1120px;margin:auto;padding:0 1rem}.narrow{max-width:800px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.skip{position:absolute;top:-5rem;left:1rem;z-index:20;background:var(--panel);padding:.5rem}.skip:focus{top:.5rem}
.site-header{background:var(--panel);border-bottom:1px solid var(--line)}.header-inner{max-width:1120px;margin:auto;padding:.7rem 1rem;display:flex;align-items:center;justify-content:space-between;gap:.75rem}.brand{display:inline-flex;align-items:center;gap:.55rem;text-decoration:none;color:var(--ink);font-weight:700}.brand img{width:32px;height:32px;border-radius:7px}.header-actions{display:flex;align-items:center;gap:.65rem}.store-name{font-size:.8rem;color:var(--muted)}.theme-toggle{min-height:44px;padding:.35rem .6rem;border:1px solid var(--line);border-radius:8px;background:var(--panel);white-space:nowrap}.tabs{display:flex;gap:.2rem}.tabs a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:64px;padding:.35rem .8rem;text-decoration:none;color:var(--muted)}.tabs a[aria-current=page]{color:var(--ink);font-weight:700;border-bottom:2px solid var(--gold)}.mobile-tabs{display:none}.notice{padding:.5rem 1rem;background:var(--raised);font-size:.78rem;text-align:center;color:var(--muted)}main{padding-top:2rem!important;padding-bottom:4rem!important}.hero{margin-bottom:1.5rem}.hero .muted{max-width:62ch}.panel,.card{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:1.1rem;margin-bottom:1rem}.section-head{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;margin:2rem 0 .85rem}.section-head h2{margin:0}.stack{display:grid;gap:1rem}.inline{display:flex;gap:.65rem;align-items:center;flex-wrap:wrap}.grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.55rem .9rem;border:1px solid var(--link);border-radius:8px;background:var(--gold);color:var(--button-ink);font-weight:700;text-decoration:none;line-height:1.25}.btn:hover{filter:brightness(1.08)}.btn:active{transform:scale(.98)}.btn.secondary{background:transparent;color:var(--link)}.btn.quiet{background:transparent;border-color:var(--line);color:var(--ink)}.btn.danger{background:transparent;border-color:var(--bad);color:var(--bad)}.btn:disabled{opacity:.62;cursor:not-allowed}.btn.small{min-height:38px;font-size:.875rem}.badge{display:inline-block;padding:.15rem .6rem;border:1px solid var(--line);border-radius:999px;font-size:.75rem;font-weight:700}.status{min-height:1.4em;color:var(--link);font-size:.9rem}.field{display:grid;gap:.35rem;margin-bottom:1rem}.field input,.field select,.field textarea{width:100%;min-height:44px;padding:.5rem;border:1px solid var(--line);border-radius:8px;background:var(--panel)}.field textarea{min-height:120px;resize:vertical}.choices{display:grid;gap:.35rem}.choices label,.checkline{display:flex;align-items:center;gap:.6rem;min-height:42px}.choices input,.checkline input{width:18px;height:18px;accent-color:var(--accent-control)}.stepbar{display:flex;gap:.3rem;margin-bottom:1.2rem}.stepbar span{flex:1;border-bottom:3px solid var(--line);font-size:.85rem;padding-bottom:.45rem}.stepbar [aria-current=step]{border-color:var(--gold);font-weight:700}.stepbar .done{border-color:var(--link)}.hours-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}.hours-row{border:1px solid var(--line);border-radius:8px;padding:.5rem}.hours-row label{display:flex;align-items:center;gap:.35rem}.hours-row input[type=time]{min-width:0;width:100%;padding:.25rem}.hours-row input[type=checkbox]{width:auto}.footer{border-top:1px solid var(--line);padding:1.25rem 1rem 5rem;text-align:center;font-size:.85rem;color:var(--muted)}.footer a{margin:0 .4rem}details summary{min-height:44px;cursor:pointer;color:var(--link);font-weight:700;display:flex;align-items:center}details[open] summary{margin-bottom:.7rem}

.chart-section{--heat-low:var(--cream);--heat-mid:var(--surface-accent);--heat-high:var(--gold);--heat-higher:var(--muted-gold);--heat-top:color-mix(in srgb,var(--gold),var(--ink) 65%);--heat-missing:var(--missing);--trend-1:var(--liuqiu);--trend-2:var(--tainan);--trend-3:var(--text-secondary)}
:root[data-theme=dark] .chart-section{--heat-low:var(--night-border);--heat-mid:color-mix(in srgb,var(--night),var(--gold) 35%);--heat-high:var(--muted-gold);--heat-higher:var(--gold);--heat-top:var(--cream);--trend-1:var(--gold);--trend-2:var(--cream);--trend-3:var(--caption)}
@media(prefers-color-scheme:dark){:root:not([data-theme]) .chart-section{--heat-low:var(--night-border);--heat-mid:color-mix(in srgb,var(--night),var(--gold) 35%);--heat-high:var(--muted-gold);--heat-higher:var(--gold);--heat-top:var(--cream);--trend-1:var(--gold);--trend-2:var(--cream);--trend-3:var(--caption)}}
.chart-frame{position:relative;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:var(--raised)}
.chart-placeholder{height:152px;background:linear-gradient(90deg,var(--raised),var(--panel),var(--raised));background-size:200% 100%;animation:shimmer 1.3s infinite}
.chart-content{overflow-x:auto;max-width:100%}
.chart-grid{display:grid;grid-template-columns:108px repeat(var(--weeks),minmax(0,1fr));grid-template-rows:32px;grid-auto-rows:40px;gap:0;width:100%;min-width:calc(108px + var(--weeks)*var(--cell-min))}
.chart-grid>span{display:flex;align-items:center;justify-content:center;font-size:.75rem;min-width:0}
.chart-grid .row-label{position:sticky;left:0;z-index:2;justify-content:flex-start;padding:0 .4rem;background:var(--panel);white-space:nowrap}
.week-heading{position:relative}.tick-label{white-space:nowrap}.week-heading .tick-label{position:absolute;left:2px}
.heat-cell{border:0;margin:0;padding:0}.heat-cell[data-level='0']{background:var(--heat-low)}.heat-cell[data-level='1']{background:var(--heat-mid)}.heat-cell[data-level='2']{background:var(--heat-high)}.heat-cell[data-level='3']{background:var(--heat-higher)}.heat-cell[data-level='4']{background:var(--heat-top)}.heat-cell.missing{background:var(--heat-missing)}
.chart-svg{width:100%;height:auto;display:block}.chart-axis{fill:var(--muted);font-size:12px}.chart-guide{stroke:var(--line);stroke-width:.5}.trend-0{--trend:var(--trend-1)}.trend-1{--trend:var(--trend-2)}.trend-2{--trend:var(--trend-3)}.trend{fill:none;stroke:var(--trend);stroke-width:2;stroke-linejoin:round}.trend.trend-1{stroke-dasharray:6 3}.trend.trend-2{stroke-dasharray:2 3}.line-legend{display:flex;flex-wrap:wrap;gap:.35rem .8rem;padding:0 .5rem .5rem;font-size:.75rem}.trend-key:before{content:"";display:inline-block;width:16px;border-top:2px solid var(--trend);vertical-align:middle;margin-right:.3rem}.trend-key.trend-1:before{border-top-style:dashed}.trend-key.trend-2:before{border-top-style:dotted}
.legend{display:flex;align-items:center;gap:.35rem;font-size:.8rem;margin:.6rem 0}.legend-scale{width:130px;height:10px;background:linear-gradient(90deg,var(--heat-low),var(--heat-mid),var(--heat-high),var(--heat-higher),var(--heat-top))}.table-scroll{overflow:auto;max-width:100%}.data-table{width:100%;border-collapse:collapse;font-size:.85rem}.data-table th,.data-table td{text-align:left;padding:.5rem;border-bottom:1px solid var(--line);white-space:nowrap}.data-table th{font-weight:700}.periods{display:flex;gap:.35rem;margin:.8rem 0}.periods button[aria-pressed=true]{background:var(--gold);color:var(--button-ink)}.chart-note{font-size:.8rem;color:var(--muted);margin-top:.5rem}.category{font-size:.78rem;font-weight:700;color:var(--link)}.card-title{margin:.45rem 0;font-size:1.23rem}.card-meta{font-size:.875rem;color:var(--muted);margin:.7rem 0}.card-actions{display:flex;flex-wrap:wrap;gap:.5rem}.card .feedback{border-top:1px solid var(--line);margin-top:1rem;padding-top:.7rem;font-size:.875rem}.feedback button{min-height:36px}.processed-card{background:var(--raised)}.processed-card .card-actions{display:none}.processed-card .result{display:flex}.result{display:none;gap:.7rem;align-items:center;flex-wrap:wrap}.skip-reasons{margin-top:.7rem}.flash{animation:flash .22s ease-out}.line-stage{background:var(--raised);border-radius:18px;padding:1rem}.line-scroll{display:flex;gap:.8rem;overflow-x:auto;scroll-snap-type:x mandatory}.line-card{flex:0 0 min(82vw,320px);scroll-snap-align:start;background:var(--panel);color:var(--ink);border:1px solid var(--line);border-radius:14px;padding:1rem}.line-reply{background:var(--panel);color:var(--ink);padding:.7rem;border-radius:10px;margin-top:.7rem;min-height:3rem}.line-card .btn{font-size:.85rem}
.internal{background:var(--bg);color:var(--ink)}.internal-shell{display:grid;grid-template-columns:190px minmax(0,1fr);max-width:1440px;margin:auto}.internal-nav{border-right:1px solid var(--line);padding:1rem;display:grid;align-content:start;gap:.4rem}.internal-nav a{padding:.6rem;color:var(--muted);text-decoration:none}.internal-nav a[aria-current=page]{color:var(--ink);background:var(--raised);border-left:3px solid var(--gold)}.internal-main{padding:1.5rem 1rem 3rem;min-width:0}.internal .data-table{font-size:.8rem}.draft-layout{display:grid;grid-template-columns:minmax(180px,30%) minmax(0,1fr);gap:1rem}.draft-item{display:block;width:100%;text-align:left;background:var(--panel);border:1px solid var(--line);padding:.7rem;margin-bottom:.5rem;border-radius:8px}.draft-item[aria-current=true]{border-color:var(--gold);background:var(--raised)}mark{background:var(--mark);color:var(--button-ink);border-radius:2px}.audit-table td{white-space:normal}
@keyframes shimmer{to{background-position-x:-200%}}@keyframes flash{from{transform:scale(.99)}to{transform:scale(1)}}@media(max-width:700px){.desktop-tabs{display:none}.mobile-tabs{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:10;background:var(--panel);border-top:1px solid var(--line);justify-content:space-around}.mobile-tabs a{flex:1}.header-inner{flex-wrap:wrap}.grid2,.draft-layout{grid-template-columns:1fr}.internal-shell{grid-template-columns:1fr}.internal-nav{border-right:0;border-bottom:1px solid var(--line);display:flex;overflow:auto;padding:.4rem}.internal-nav a{white-space:nowrap}.internal-main{padding:1rem}.hours-grid{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.chart-frame[data-chart="line"]~.legend,.chart-frame[data-chart="line"]~.legend+.small{display:none}

[hidden]{display:none!important}
.theme-toggle{width:44px;display:inline-grid;place-items:center;flex-shrink:0}.theme-toggle svg{display:block}
.brand{white-space:nowrap}.header-actions{min-width:0}.store-name{max-width:12em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#settings-form{margin-bottom:var(--space-8)}.calendar-copy{max-width:62ch}.calendar-panel .inline{margin:1rem 0}.calendar-panel .small{margin:.8rem 0}
.setup-actions{margin-top:1.5rem}.search-results{display:grid;gap:.6rem;padding:0;list-style:none}.search-results button{width:100%;text-align:left;display:block}.search-results small{display:block;font-weight:400;margin-top:.2rem}.hours-row input[type=time]{background:var(--panel);border:1px solid var(--line);border-radius:4px;color:var(--ink);min-height:44px}.hours-row strong{display:block;margin-bottom:.4rem}
.segmented{display:flex;flex-wrap:wrap;gap:.4rem;margin:.7rem 0}.segmented [aria-pressed=true]{background:var(--gold);color:var(--button-ink)}
.topic-ranking{padding:0;list-style:none;counter-reset:ranking;margin:1rem 0}.topic-ranking li{counter-increment:ranking;display:grid;grid-template-columns:2rem minmax(0,1fr) auto auto;gap:.8rem;align-items:center;border-bottom:1px solid var(--line);padding:.9rem .2rem}.topic-ranking li:before{content:counter(ranking,decimal-leading-zero);font-size:.8rem;color:var(--muted)}.topic-ranking .change{min-width:5em;text-align:right;font-size:.85rem;color:var(--link)}
.week-trends{width:min(1200px,calc(100vw - 2rem));margin-left:50%;transform:translateX(-50%);margin-top:2.5rem;margin-bottom:2.5rem}.chart-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.range-control{max-width:560px;margin:1rem 0 1.5rem}.range-control input{width:100%;height:44px;accent-color:var(--link);margin:0}.range-ticks{display:flex;justify-content:space-between;font-size:.8rem;color:var(--muted)}.topic-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.25rem .75rem}.topic-options label{display:flex;gap:.45rem;align-items:center;min-height:44px}.topic-options input{accent-color:var(--link)}
.week-trends .chart-frame{min-height:232px}.week-trends .chart-placeholder{height:232px}.chart-grid{grid-template-columns:126px repeat(var(--weeks),minmax(0,1fr));min-width:calc(126px + var(--weeks)*var(--cell-min))}.chart-grid .row-label{white-space:normal;line-height:1.2}.chart-svg{height:232px}.line-legend{padding:.75rem 0}.heat-legend{flex-wrap:wrap}.missing-key{width:14px;height:14px;background:var(--heat-missing);display:inline-block}.legend-caption{display:flex;align-items:center;gap:.4rem}.trend-3{--trend:var(--chart-4)}.trend-4{--trend:var(--chart-5)}.trend-5{--trend:var(--chart-6)}.trend-6{--trend:var(--chart-7)}.trend-7{--trend:var(--chart-8)}.trend-8{--trend:var(--chart-9)}.trend-9{--trend:var(--chart-10)}
.material-note{display:none;color:var(--link);margin-top:.7rem}[data-result=mediflow] .material-note{display:block}.history-row{padding:1rem 0;border-bottom:1px solid var(--line)}.history-row:last-child{border:0}.history-row .inline{margin-top:.65rem}.history-row h3{margin-bottom:.5rem}.history-week{margin-top:1.5rem}.history-status{color:var(--muted)}
@media(max-width:420px){.topic-ranking li{gap:.4rem;grid-template-columns:1.6rem minmax(0,1fr) auto auto}.topic-ranking .change{min-width:4em;font-size:.75rem}.topic-ranking .num{font-size:.85rem}.brand{font-size:.9rem}.header-inner{gap:.4rem}.store-name{max-width:7em}.range-ticks{font-size:.75rem}}

.search-results button[aria-pressed=true]{border-color:var(--link);background:var(--raised);box-shadow:inset 4px 0 var(--link)}
#hours-summary-row{margin-bottom:1rem}#hours-summary{flex:1;min-width:180px;margin:0}

dialog{width:min(560px,calc(100% - 2rem));max-height:85dvh;overflow:auto;background:var(--panel);color:var(--ink);border:1px solid var(--line);border-radius:14px;padding:1.25rem}dialog::backdrop{background:color-mix(in srgb,var(--night) 65%,transparent)}dialog .section-head{margin:0 0 1rem}.request-item{padding:1rem 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.request-item p:last-child{margin-bottom:0}.request-table td{white-space:normal;min-width:7em;overflow-wrap:anywhere}.request-table td:last-child{min-width:14em}[data-request-open][aria-disabled=true]{color:var(--muted);cursor:not-allowed}

select,.field select,body select{appearance:none;-webkit-appearance:none;padding-right:2.75rem;background-image:linear-gradient(45deg,transparent 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,transparent 50%);background-position:calc(100% - 1.4rem) 50%,calc(100% - 1.4rem + 5px) 50%;background-size:5px 5px,5px 5px;background-repeat:no-repeat}

.topic-picker{margin:.75rem 0 1rem}.topic-picker p{margin:0 0 .5rem}
.topic-options{display:flex;flex-wrap:wrap;gap:.5rem}
.topic-options label{position:relative;display:inline-flex;align-items:center;gap:.35rem;min-height:36px;padding:.35rem .85rem;border:1px solid var(--line);border-radius:999px;cursor:pointer;transition:background-color .15s,border-color .15s,transform .15s}
.topic-options label::before{content:"＋";font-size:.85em;opacity:.7}
.topic-options label:has(input:checked){background:var(--action);border-color:var(--action);color:var(--button-ink)}
.topic-options label:has(input:checked)::before{content:"✓";opacity:1}
.topic-options label:hover{border-color:var(--action)}
.topic-options label:active{transform:scale(.97)}
.topic-options input{position:absolute;opacity:0;width:1px;height:1px;margin:0}
.topic-options label:has(input:focus-visible){outline:2px solid var(--focus);outline-offset:2px}
.week-trends .chart-svg{height:auto}
.chart-tip{position:absolute;z-index:5;pointer-events:none;display:grid;gap:.15rem;min-width:7rem;padding:.45rem .65rem;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--ink);box-shadow:var(--shadow);font-size:.8rem;opacity:0;transform:translateY(4px) scale(.98);transition:opacity .12s,transform .12s}
.chart-tip.on{opacity:1;transform:none}
.chart-tip strong{font-variant-numeric:tabular-nums}
.chart-tip .tip-row{display:flex;justify-content:space-between;gap:.75rem}
.heat-cell{transition:box-shadow .12s,filter .12s}
.heat-cell:hover{box-shadow:inset 0 0 0 2px var(--ink);filter:saturate(1.15)}
.hover-guide{stroke:var(--ink);stroke-width:1;stroke-dasharray:3 3;opacity:.5}
@keyframes heat-in{from{opacity:0}to{opacity:1}}
.chart-grid .heat-cell{animation:heat-in .35s ease-out both;animation-delay:calc(var(--col,0) * 12ms)}
@media (prefers-reduced-motion:reduce){.chart-tip,.heat-cell,.topic-options label{transition:none}.chart-grid .heat-cell{animation:none}}

.data-panel h2{margin-bottom:.5rem}
.data-row{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:1rem 0;border-top:1px solid var(--line)}
.data-row h3{margin:0 0 .25rem;font-size:1rem}
.data-row p{margin:0}
.data-row .btn{flex:none}
.data-row-danger h3{color:var(--danger)}
@media (max-width:600px){.data-row{flex-direction:column;align-items:stretch;gap:.75rem}.data-row .btn{width:100%}}
#delete-confirm{margin-top:.5rem}

.visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.history-filters{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem;margin:0 0 2rem}
.filter-tile{display:grid;gap:.15rem;justify-items:start;padding:1rem 1.1rem;border:1px solid var(--line);border-radius:12px;background:var(--panel);color:inherit;font:inherit;text-align:left;cursor:pointer;transition:border-color .15s,background-color .15s,transform .15s}
.filter-tile:hover{border-color:var(--action)}
.filter-tile:active{transform:scale(.98)}
.filter-tile[aria-pressed="true"]{border-color:var(--action);box-shadow:inset 0 0 0 1px var(--action)}
.filter-tile .tile-num{font-size:1.75rem;font-weight:700;line-height:1.1;font-variant-numeric:tabular-nums}
.filter-tile span:last-child{font-size:.9rem;opacity:.75}
.history-page .history-week{display:grid;grid-template-columns:8.5rem 1fr;gap:1.5rem;padding:1.5rem 0;border:0;border-top:1px solid var(--line);border-radius:0;background:none;box-shadow:none}
.history-week-head h2{margin:0;font-size:1.05rem;font-variant-numeric:tabular-nums}
.history-week-head .history-week-count{display:block;margin-top:.25rem}
.history-list{display:grid;gap:.75rem}
.history-page .history-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.9rem 1.1rem;border:1px solid var(--line);border-radius:12px;background:var(--panel)}
.history-row h3{margin:.15rem 0;font-size:1rem}
.history-method{font-size:.8rem;opacity:.7}
.status-pill{flex:none;padding:.25rem .7rem;border-radius:999px;font-size:.8rem;font-weight:600;border:1px solid var(--line)}
.status-pill.doing{border-color:var(--action);color:var(--link)}
.status-pill.done{background:var(--action);border-color:var(--action);color:var(--button-ink)}
.status-pill.done::before{content:"✓ "}
.status-pill.skipped{opacity:.65}
@media (max-width:640px){.history-filters{grid-template-columns:repeat(2,1fr)}.history-page .history-week{grid-template-columns:1fr;gap:.75rem}.history-week-head{display:flex;align-items:baseline;gap:.75rem}.history-week-head .history-week-count{margin:0}}
p:has(> a[data-request-open]){margin-top:1.25rem}
.week-trends{margin-top:3rem;padding-top:2.5rem;border-top:1px solid var(--line)}
/* Loading and dynamic data use the prototype's existing panels and typography. */
.loading [data-loading]{opacity:.65}
.chart-grid.weeks-4{--weeks:4}.chart-grid.weeks-8{--weeks:8}.chart-grid.weeks-12{--weeks:12}.chart-grid.weeks-13{--weeks:13}.chart-grid.weeks-26{--weeks:26}.chart-grid.weeks-52{--weeks:52}
.chart-grid{--cell-min:18px}.state-placeholder{min-height:390px;background:var(--raised)}
.load-failed #page-status{color:var(--bad)}
.draft-copy{white-space:pre-wrap}

.btn-provider{display:flex;align-items:center;justify-content:center;gap:.65rem;min-height:48px;padding:.6rem 1rem;border-radius:10px;font-weight:700;font-size:1rem;text-decoration:none;transition:filter .15s,transform .15s}
.btn-provider:hover{filter:brightness(1.05)}.btn-provider:active{transform:scale(.98)}
.btn-provider svg{flex:none}
.btn-line{background:#06C755;color:#fff;border:1px solid #06C755}
.btn-google{background:#fff;color:#1f1f1f;border:1px solid #dadce0}
#login-providers{gap:.75rem}

/* Mobile fixes: shared left edge, opaque navigation, native iOS time controls. */
[hidden]{display:none!important}
.quiet-hours{display:flex;flex-wrap:wrap;gap:1rem;margin-top:.5rem}
.quiet-hours .field{display:flex;align-items:center;gap:.5rem}
.quiet-hours input[type=time]{width:7.5rem;min-width:7.5rem}
.hours-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem}
.hours-row strong{margin:0;align-self:center}
.hours-row input[type=time]{width:100%;min-width:0;min-height:44px;border:1px solid var(--line);padding:.5rem}
input[type=time]::-webkit-date-and-time-value{text-align:left;min-height:1.5em}
[data-setup-step]>.choices+button{margin-top:1.5rem}
.heat-legend{display:grid;grid-template-columns:130px minmax(0,1fr);gap:.5rem;align-items:center}
.heat-legend .legend-caption{grid-column:1 / -1;margin:0}
.week-trends.empty-trends{width:100%;margin-left:0;transform:none}
#processed-items{margin-top:1.5rem}
@media(max-width:700px){
  :root{--mobile-tabs-height:56px}
  .header-inner,.wrap{padding-left:1rem;padding-right:1rem}
  .mobile-tabs{height:calc(var(--mobile-tabs-height) + env(safe-area-inset-bottom,0px));padding-bottom:env(safe-area-inset-bottom,0px);background:#fffdf8;background:var(--panel,#fffdf8);isolation:isolate}
  .mobile-tabs a{min-height:var(--mobile-tabs-height)}
  main{padding-bottom:calc(var(--mobile-tabs-height) + env(safe-area-inset-bottom,0px) + 1.5rem)!important}
  .footer{padding-bottom:calc(var(--mobile-tabs-height) + env(safe-area-inset-bottom,0px) + 1.5rem)}
  .settings-page main .panel,[data-setup-step]{padding:1.25rem 0;border:0;border-radius:0;background:transparent;border-bottom:1px solid var(--line)}
  .settings-page main .btn{width:100%}
  .settings-page main .inline{align-items:stretch}
  .settings-page main .inline>.btn{flex:1 1 100%}
  .week-trends{width:100%;margin-left:0;transform:none}
}
