/* v2: the app shell (compact bar, phone bottom bar, slim footer) and modern components (upload areas, steps,
   choice cards, tiles, progress, styled form controls). Loaded after base.css and app.css. */

:root{--foot-h:34px;--bnav-h:0px}
@media (max-width:760px){:root{--foot-h:26px;--bnav-h:62px}}
body{padding-bottom:calc(var(--foot-h) + var(--bnav-h) + env(safe-area-inset-bottom,0px))}
.ic{width:18px;height:18px;flex:none}
.hide-m{}
@media (max-width:760px){.hide-m{display:none!important}}

/* ---------- app bar ---------- */
.bar .wrap{padding-block:8px 0}
.bar-top{min-height:48px}
.bar h1{font-size:17px}
.bar h1 .t-short{display:none}
.bar .sub{font-size:10.5px}
.iconbtn{flex:none;display:grid;place-items:center;width:38px;height:38px;border-radius:12px;color:inherit;background:rgba(255,255,255,.12);box-shadow:0 0 0 1px rgba(255,255,255,.12) inset}
.iconbtn:hover{background:rgba(255,255,255,.2)}
.iconbtn .ic{width:19px;height:19px}
.seg button{min-width:36px}
@media (max-width:760px){
  .bar .wrap{padding-block:6px 6px}
  .bar-top{min-height:44px;gap:10px}
  .seal{width:34px;height:34px;border-radius:11px;font-size:11px}
  .bar h1{font-size:16px;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;-webkit-line-clamp:unset}
  .bar h1 .t-full{display:none}
  .bar h1 .t-short{display:inline}
  .bar .sub{display:block;font-size:10px;opacity:.65}
  .userbtn{height:38px;width:38px;padding:0;justify-content:center;border-radius:12px}
  .userbtn .av{width:28px;height:28px}
  .tabs{display:none!important}
}

/* ---------- footer (slim, fixed) ---------- */
.foot{position:fixed;left:0;right:0;bottom:0;z-index:24;height:calc(var(--foot-h) + env(safe-area-inset-bottom,0px));padding-bottom:env(safe-area-inset-bottom,0px);
  background:color-mix(in srgb,var(--bg) 94%,transparent);box-shadow:0 -1px 0 var(--line);color:var(--muted);font-size:12px}
.foot-in{height:var(--foot-h);display:flex;align-items:center;justify-content:space-between;gap:10px 16px;min-width:0}
.foot-copy,.foot-links{display:flex;align-items:center;gap:6px;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.foot-links{overflow-x:auto;scrollbar-width:none}
.foot-links::-webkit-scrollbar{display:none}
.foot a{color:var(--muted);text-decoration:none}
.foot a:hover{color:var(--ink);text-decoration:underline}
.foot b,.foot .by a{color:var(--ink);font-weight:700}
.foot .sep{opacity:.45}
.foot-copy .cp{min-width:0;overflow:hidden;text-overflow:ellipsis}
.foot-copy .sep,.foot-copy .by{flex:none}
.foot .by,.foot .by b,.foot .by a{font-size:inherit;font-family:inherit;line-height:inherit}
@media (max-width:760px){
  .foot{font-size:10.5px;height:var(--foot-h);padding-bottom:0;bottom:calc(var(--bnav-h) + env(safe-area-inset-bottom,0px));box-shadow:0 -1px 0 var(--line)}
  .foot-in{justify-content:center}
  .foot-links{display:none}
  .foot-copy{justify-content:center}
}

/* ---------- bottom bar on phones ---------- */
.bnav{display:none}
@media (max-width:760px){
  .bnav{position:fixed;left:0;right:0;bottom:0;z-index:25;display:grid;grid-auto-flow:column;grid-auto-columns:1fr;height:calc(var(--bnav-h) + env(safe-area-inset-bottom,0px));
    padding:6px max(6px,env(safe-area-inset-left,0px)) calc(6px + env(safe-area-inset-bottom,0px)) max(6px,env(safe-area-inset-right,0px));
    background:var(--glass);-webkit-backdrop-filter:saturate(1.6) blur(18px);backdrop-filter:saturate(1.6) blur(18px);box-shadow:0 -1px 0 var(--line),0 -10px 30px -18px rgba(0,0,0,.4)}
  .bn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;border:0;background:none;color:var(--muted);text-decoration:none;font-size:10.5px;font-weight:700;border-radius:14px;min-width:0;padding:0 2px;cursor:pointer}
  .bn span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .bn .ic{width:22px;height:22px}
  .bn[aria-current="page"]{color:var(--tea-2)}
  :root[data-theme="light"] .bn[aria-current="page"]{color:var(--tea)}
  .bn[aria-current="page"] .ic{background:color-mix(in srgb,var(--turmeric) 22%,transparent);border-radius:10px;padding:3px;width:34px;height:28px;color:var(--turmeric-ink)}
  .toast{bottom:calc(var(--bnav-h) + var(--foot-h) + 12px + env(safe-area-inset-bottom,0px))}
  .savebar{bottom:calc(var(--bnav-h) + env(safe-area-inset-bottom,0px))}
}
.toast{bottom:calc(var(--foot-h) + 14px + env(safe-area-inset-bottom,0px))}
.savebar{bottom:var(--foot-h)}

/* ---------- sheets (More, user menu) ---------- */
.sheet-list{display:grid;gap:2px;margin:0 -6px}
.sheet-list + .sheet-list,.sheet-sec + .sheet-list{margin-top:10px;padding-top:10px;border-top:1px solid var(--line)}
.sheet-i{display:flex;align-items:center;gap:12px;width:100%;min-height:46px;padding:8px 10px;border-radius:12px;border:0;background:none;text-align:left;font-weight:700;font-size:14.5px;color:var(--ink);text-decoration:none;cursor:pointer}
.sheet-i:hover,.sheet-i.on{background:var(--surface-2)}
.sheet-i .ic{color:var(--muted)}
.sheet-i span{flex:1;min-width:0}
.sheet-i .go{width:16px;height:16px;opacity:.5}
.sheet-i.danger,.sheet-i.danger .ic{color:var(--fail)}
.sheet-sec{display:grid;gap:8px;margin-top:12px}
.seg.wide{display:flex;width:100%;background:var(--surface-2);box-shadow:0 0 0 1px var(--line) inset;color:var(--ink);padding:4px}
.seg.wide button{flex:1;height:38px;opacity:1;color:var(--muted);gap:6px;display:inline-flex;align-items:center;justify-content:center}
.seg.wide button .ic{width:16px;height:16px}
.seg.wide button[aria-pressed="true"]{color:var(--on-turmeric)}
@media (max-width:760px){
  .mdl{max-height:86dvh}
  .mdl-body{padding:12px 16px 16px}
}

/* ---------- text sizes on phones ---------- */
@media (max-width:760px){
  .page{padding-block:14px 24px;gap:14px}
  .phead h2{font-size:clamp(20px,6vw,24px)}
  .hero-in{padding-block:18px 16px;gap:16px}
  .hero h2{font-size:clamp(24px,7.6vw,32px);line-height:1.1}
  html[lang="si"] .hero h2,html[lang="ta"] .hero h2{font-size:clamp(21px,6.4vw,28px);line-height:1.35}
  .hero p{font-size:14px}
  .stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
  .stat{padding:10px 8px;border-radius:14px;text-align:center}
  .stat b{font-size:20px}
  .stat span{font-size:10.5px;line-height:1.25;display:block}
  .card{padding:13px 14px 12px}
  .card h3{font-size:16px}
  .search input{height:46px;font-size:15px;border-radius:14px}
  .search.big input{height:50px;font-size:15.5px}
  .chip{min-height:34px;padding:0 12px;font-size:12.5px}
  .kpi b{font-size:22px}
  .kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .a-card{padding:14px}
  .gz{padding:16px;border-radius:18px}
  .gz-no{font-size:28px}
  .btn{min-height:40px;padding:0 14px}
  .phead p{font-size:13.5px}
}
html[lang="ta"] body{line-height:1.65}

/* ---------- home ---------- */
.notice{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:14px;background:var(--turmeric-soft);color:var(--turmeric-ink);font-weight:700;font-size:13.5px}
.notice .ic{color:var(--turmeric-ink)}
.home-search{position:relative}
.home-search .sres{position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:15}
.sec{display:grid;gap:12px;min-width:0}
.sec-top{display:flex;align-items:flex-end;justify-content:space-between;gap:10px}
.sec-top h3{margin:0;font-family:var(--display);font-size:19px;line-height:1.25;display:flex;align-items:center;gap:8px}
.sec-top h3 .ic{color:var(--turmeric-ink)}
.sec-top a{font-size:13px;font-weight:700;text-decoration:none;white-space:nowrap}
.tiles{display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(min(100%,230px),1fr))}
.tile{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr);gap:4px 12px;align-items:center;padding:14px;border-radius:18px;background:var(--surface);box-shadow:0 0 0 1px var(--line) inset,var(--shadow);
  color:var(--ink);text-decoration:none;transition:transform .2s var(--ease),box-shadow .2s;min-width:0}
.tile:hover{transform:translateY(-2px);box-shadow:0 0 0 1px color-mix(in srgb,var(--c,var(--turmeric)) 45%,var(--line)) inset,var(--shadow)}
.tile .ti{grid-row:span 2;width:44px;height:44px;border-radius:14px;display:grid;place-items:center;color:var(--c,var(--tea));background:color-mix(in srgb,var(--c,var(--tea)) 14%,transparent)}
.tile .ti .ic{width:22px;height:22px}
.tile b{font-family:var(--display);font-size:15.5px;line-height:1.25;min-width:0}
.tile small{color:var(--muted);font-size:12.5px;line-height:1.35;min-width:0}
.tile .soon{position:absolute;top:10px;right:10px;font-size:10.5px;font-weight:700;padding:2px 8px;border-radius:99px;background:var(--surface-2);color:var(--muted)}
.tile.off{opacity:.62}
@media (max-width:760px){.tiles.two-m{grid-template-columns:repeat(2,minmax(0,1fr))}.tiles.two-m .tile{grid-template-columns:1fr;text-align:left;gap:8px;padding:12px}.tiles.two-m .tile .ti{grid-row:auto;width:38px;height:38px}}
.steps{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));counter-reset:st}
.step{display:flex;gap:12px;align-items:flex-start;padding:14px;border-radius:18px;background:var(--glass-2);box-shadow:0 0 0 1px var(--line) inset}
.step .n{flex:none;width:30px;height:30px;border-radius:10px;display:grid;place-items:center;background:var(--tea);color:var(--on-tea);font-weight:800;font-size:13px}
.step b{display:block;font-size:14.5px}
.step span{color:var(--muted);font-size:13px}
.latest{display:grid;gap:8px}
.latest a{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:16px;background:var(--surface);box-shadow:0 0 0 1px var(--line) inset;color:var(--ink);text-decoration:none;min-width:0}
.latest a:hover{box-shadow:0 0 0 1px var(--turmeric) inset}
.latest .no{flex:none;font-family:var(--mono);font-weight:700;font-size:12px;padding:5px 9px;border-radius:9px;background:var(--turmeric-soft);color:var(--turmeric-ink)}
.latest .tt{flex:1;min-width:0}
.latest .tt b{display:block;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.latest .tt small{color:var(--muted);font-size:12px}
.latest .ic.go{color:var(--muted);width:16px;height:16px}

/* ---------- compact page header (library views, sector, pages) ---------- */
.ptop{display:grid;gap:8px;padding-top:6px}
.ptop .row{display:flex;align-items:center;gap:12px;min-width:0}
.ptop .ti{flex:none;width:46px;height:46px;border-radius:15px;display:grid;place-items:center;color:var(--c,var(--tea));background:color-mix(in srgb,var(--c,var(--tea)) 14%,transparent)}
.ptop .ti .ic{width:24px;height:24px}
.ptop h2{margin:0;font-family:var(--display);font-weight:800;font-size:clamp(21px,3.4vw,30px);line-height:1.15;letter-spacing:-.015em}
html[lang="si"] .ptop h2,html[lang="ta"] .ptop h2{line-height:1.35;letter-spacing:0}
.ptop p{margin:0;color:var(--muted);font-size:14px;max-width:70ch}
.guide{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding-bottom:2px}
.guide::-webkit-scrollbar{display:none}
.guide span{flex:none;display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--muted);padding:5px 10px;border-radius:99px;background:var(--glass-2);box-shadow:0 0 0 1px var(--line) inset}
.guide .ic{width:14px;height:14px;color:var(--turmeric-ink)}

/* ---------- pages (About, Privacy…) ---------- */
.prose{max-width:780px;margin-inline:auto;width:100%;display:grid;gap:4px}
.prose h3{margin:18px 0 4px;font-family:var(--display);font-size:17px;display:flex;align-items:center;gap:8px}
.prose h3::before{content:"";width:6px;height:18px;border-radius:3px;background:var(--turmeric)}
.prose p{margin:4px 0}
.prose ul{margin:2px 0 6px;padding-left:20px;display:grid;gap:4px}
.prose li::marker{color:var(--turmeric-ink)}
.prose em{color:var(--muted)}
.prose a{font-weight:700}
.page-links{display:flex;flex-wrap:wrap;gap:8px}
.page-links a{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border-radius:99px;background:var(--surface);box-shadow:0 0 0 1px var(--line) inset;color:var(--ink);text-decoration:none;font-size:13px;font-weight:700}
.page-links a[aria-current="page"]{background:var(--ink);color:var(--bg)}
.page-links .ic{width:15px;height:15px}

/* ---------- contact ---------- */
.cards-info{display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),1fr))}
.info-c{display:flex;gap:12px;align-items:flex-start;padding:14px;border-radius:16px;background:var(--surface);box-shadow:0 0 0 1px var(--line) inset;color:var(--ink);text-decoration:none;min-width:0}
.info-c .ti{flex:none;width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:var(--turmeric-soft);color:var(--turmeric-ink)}
.info-c b{display:block;font-size:12px;color:var(--muted);font-weight:700}
.info-c span{display:block;font-weight:700;overflow-wrap:anywhere;white-space:pre-line}

/* ---------- form controls (styled, not the browser's defaults) ---------- */
.sel{appearance:none;-webkit-appearance:none;padding-right:38px;cursor:pointer;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2353655B' stroke-width='2.2' stroke-linecap='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 12px center;background-size:16px}
input[type="date"].inp{min-width:0}
input[type="date"]::-webkit-calendar-picker-indicator{opacity:.6;cursor:pointer}
.chk input,.radio input{appearance:none;-webkit-appearance:none;width:20px;height:20px;border-radius:6px;box-shadow:0 0 0 1.5px var(--line-2) inset;background:var(--bg);display:grid;place-items:center;flex:none;cursor:pointer;margin:0}
.radio input{border-radius:50%}
.chk input:checked,.radio input:checked{background:var(--tea);box-shadow:none}
.chk input:checked::after{content:"";width:6px;height:11px;border:solid var(--on-tea);border-width:0 2.4px 2.4px 0;transform:translateY(-1px) rotate(45deg)}
.radio input:checked::after{content:"";width:8px;height:8px;border-radius:50%;background:var(--on-tea)}
.chk,.radio{display:inline-flex;align-items:flex-start;gap:10px;cursor:pointer;font-size:14px;line-height:1.45}
input[type="file"].inp{padding:10px}

/* ---------- upload area ---------- */
.drop{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px;border-radius:16px;
  border:1.5px dashed var(--line-2);background:var(--glass-2);cursor:pointer;transition:border-color .2s,background .2s;min-width:0}
.drop:hover,.drop.over{border-color:var(--turmeric);background:var(--turmeric-soft)}
.drop input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%}
.drop .dz-ic{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:var(--surface);box-shadow:0 0 0 1px var(--line) inset;color:var(--muted);overflow:hidden}
.drop .dz-ic img{width:100%;height:100%;object-fit:contain;background:#fff}
.drop .dz-t{min-width:0}
.drop .dz-t b{display:block;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.drop .dz-t small{display:block;color:var(--muted);font-size:12px}
.drop .dz-x{position:relative;z-index:1}
.drop.has{border-style:solid;border-color:color-mix(in srgb,var(--pass) 45%,var(--line))}
.drop.has .dz-ic{color:var(--pass)}
.drop.bad{border-color:var(--fail);background:var(--fail-soft)}
.progress{height:8px;border-radius:99px;background:var(--surface-3);overflow:hidden}
.progress i{display:block;height:100%;width:var(--p,0%);border-radius:inherit;background:linear-gradient(90deg,var(--tea-2),var(--turmeric));transition:width .3s var(--ease)}
.progress.warn i{background:var(--warn)}
.progress.bad i{background:var(--fail)}

/* ---------- steps (application form, Drive setup) ---------- */
.stepper{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none}
.stepper::-webkit-scrollbar{display:none}
.stepper .s{flex:1 0 auto;display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:12px;background:var(--surface);box-shadow:0 0 0 1px var(--line) inset;font-size:12.5px;font-weight:700;color:var(--muted);white-space:nowrap}
.stepper .s i{font-style:normal;width:22px;height:22px;border-radius:7px;display:grid;place-items:center;background:var(--surface-2);font-size:11.5px}
.stepper .s.on{color:var(--ink);box-shadow:0 0 0 1.5px var(--turmeric) inset}
.stepper .s.on i{background:var(--turmeric);color:var(--on-turmeric)}
.stepper .s.done i{background:var(--pass);color:#fff}
.choices{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr))}
.choice{position:relative;display:grid;gap:6px;padding:16px;border-radius:18px;background:var(--surface);box-shadow:0 0 0 1.5px var(--line) inset;cursor:pointer;text-align:left;border:0;color:var(--ink);font:inherit}
.choice .ti{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:var(--surface-2);color:var(--tea)}
.choice b{font-family:var(--display);font-size:16px}
.choice small{color:var(--muted);font-size:13px}
.choice[aria-pressed="true"]{box-shadow:0 0 0 2px var(--turmeric) inset,var(--shadow);background:var(--turmeric-soft)}
.choice[aria-pressed="true"]::after{content:"✓";position:absolute;top:12px;right:14px;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:var(--turmeric);color:var(--on-turmeric);font-weight:800;font-size:13px}
.wiz-acts{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}
.review{display:grid;gap:0}
.review div{display:grid;grid-template-columns:minmax(120px,200px) 1fr;gap:10px;padding:9px 0;border-top:1px solid var(--line);font-size:14px}
.review div:first-child{border-top:0}
.review span{color:var(--muted)}
@media (max-width:560px){.review div{grid-template-columns:1fr;gap:2px}}
.ok-box{display:grid;justify-items:center;text-align:center;gap:10px;padding:28px 18px}
.ok-box .big{width:64px;height:64px;border-radius:20px;display:grid;place-items:center;background:var(--pass-soft);color:var(--pass)}
.ok-box .big .ic{width:32px;height:32px}
.ok-box .ref{font-family:var(--mono);font-weight:800;font-size:22px;letter-spacing:.04em;padding:8px 14px;border-radius:12px;background:var(--surface-2)}

/* ---------- plans ---------- */
.plans{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr))}
.plan{display:grid;gap:10px;align-content:start;padding:18px;border-radius:20px;background:var(--surface);box-shadow:0 0 0 1px var(--line) inset,var(--shadow)}
.plan.cur{box-shadow:0 0 0 2px var(--turmeric) inset,var(--shadow)}
.plan h4{margin:0;font-family:var(--display);font-size:18px;display:flex;justify-content:space-between;gap:8px;align-items:center}
.plan .price{font-family:var(--display);font-weight:800;font-size:20px;color:var(--tea-2)}
:root[data-theme="light"] .plan .price{color:var(--tea)}
.plan ul{margin:0;padding:0;list-style:none;display:grid;gap:6px;font-size:13.5px}
.plan li{display:flex;gap:8px;align-items:flex-start}
.plan li .ic{width:16px;height:16px;color:var(--pass);margin-top:2px}
.usage{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr))}
.usage > div{display:grid;gap:6px}
.usage .top{display:flex;justify-content:space-between;gap:8px;font-size:13px}
.usage .top b{font-family:var(--mono)}

/* ---------- settings: categories on the left (desktop), a list on phones ---------- */
.set-layout{display:grid;gap:16px;grid-template-columns:240px minmax(0,1fr);align-items:start}
.set-nav{position:sticky;top:calc(var(--bar-h,110px) + 8px);display:grid;gap:2px;padding:6px;border-radius:18px;background:var(--surface);box-shadow:0 0 0 1px var(--line) inset}
.set-nav a{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:12px;color:var(--ink);text-decoration:none;font-weight:700;font-size:13.5px}
.set-nav a .ic{color:var(--muted)}
.set-nav a[aria-current="page"]{background:var(--ink);color:var(--bg)}
.set-nav a[aria-current="page"] .ic{color:var(--bg)}
.set-nav a small{margin-left:auto;font-family:var(--mono);font-size:11px;opacity:.6}
.set-body{display:grid;gap:14px;min-width:0}
.set-group > h4{margin:0;padding:12px 18px;font-family:var(--display);font-size:14px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid var(--line)}
html[lang="si"] .set-group > h4,html[lang="ta"] .set-group > h4{text-transform:none;letter-spacing:0;font-size:14.5px}
@media (max-width:860px){
  .set-layout{grid-template-columns:minmax(0,1fr)}
  .set-nav{position:static;display:flex;overflow-x:auto;scrollbar-width:none;padding:4px;border-radius:14px}
  .set-nav::-webkit-scrollbar{display:none}
  .set-nav a{flex:none;padding:8px 12px}
  .set-nav a small{display:none}
}
.img-set{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.img-set .prev{width:64px;height:64px;border-radius:14px;background:var(--surface-2) center/contain no-repeat;box-shadow:0 0 0 1px var(--line) inset;flex:none}
.img-set .prev.wide{width:120px}

/* ---------- small things ---------- */
.verified{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:700;color:var(--pass)}
.verified .ic{width:15px;height:15px}
.code-box{position:relative;max-height:220px;overflow:auto;border-radius:12px;background:#0d1712;color:#d8eadf;font-family:ui-monospace,Menlo,Consolas,monospace;font-size:11.5px;line-height:1.5;padding:12px;white-space:pre}
.howto{display:grid;gap:10px;counter-reset:h}
.howto > li{list-style:none;display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:start}
.howto > li::before{counter-increment:h;content:counter(h);width:28px;height:28px;border-radius:9px;display:grid;place-items:center;background:var(--tea);color:var(--on-tea);font-weight:800;font-size:13px}
.howto{padding:0;margin:0}
.howto b{display:block}
.howto small{color:var(--muted);display:block;margin-top:2px}
.acct{display:grid;gap:10px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;padding:14px 16px;border-radius:16px;background:var(--surface);box-shadow:0 0 0 1px var(--line) inset}
.acct .ti{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:var(--surface-2);color:var(--tea)}
.acct b{display:block}
.acct small{display:block;color:var(--muted);font-size:12.5px}
@media (max-width:560px){.acct{grid-template-columns:auto minmax(0,1fr)}.acct .a-row{grid-column:1/-1}}
.dev-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px 0;border-top:1px solid var(--line)}
.dev-row:first-child{border-top:0}
.dev-row .ti{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:var(--surface-2);color:var(--muted)}
.dev-row.cur .ti{background:var(--pass-soft);color:var(--pass)}
.dev-row b{display:block;font-size:14px}
.dev-row small{display:block;color:var(--muted);font-size:12px}

/* ---------- phone-only parts, tabs inside pages, editors ---------- */
.show-m{display:none!important}
@media (max-width:760px){.show-m{display:flex!important}}
.wrap-in{margin-top:12px}
.ltabs{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;margin:14px 0 4px;padding:2px}
.ltabs::-webkit-scrollbar{display:none}
.ltabs > a,.ltabs > button{flex:none;display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:0 12px;border-radius:12px;border:0;background:var(--surface);box-shadow:0 0 0 1px var(--line) inset;color:var(--ink);font:inherit;font-weight:700;font-size:13px;text-decoration:none;cursor:pointer}
.ltabs > a .ic,.ltabs > button .ic{width:16px;height:16px;color:var(--muted)}
.ltabs > a i{font-style:normal;font-family:var(--mono);font-size:11px;padding:1px 6px;border-radius:99px;background:var(--surface-2);color:var(--muted)}
.ltabs > [aria-selected="true"],.ltabs > [aria-pressed="true"]{background:var(--ink);color:var(--bg);box-shadow:none}
.ltabs > [aria-selected="true"] .ic,.ltabs > [aria-pressed="true"] .ic{color:var(--bg)}
.ltabs .pv-btn{margin-left:auto}
.lpane{display:grid;gap:10px;margin-top:10px}
.lpane .pv{padding:16px;border-radius:16px;background:var(--surface-2);max-height:60vh;overflow:auto}
.icon-pick{display:flex;gap:8px;align-items:center}
.icon-pick .sel{flex:1;min-width:0}
.ip-prev{flex:none;width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:var(--surface-2);color:var(--tea)}
.f-help.ok{display:flex;align-items:center;gap:6px;color:var(--pass);font-weight:700}
.f-help.ok .ic{width:15px;height:15px}
.sres-i.more{justify-content:center;gap:8px;color:var(--tea-2);font-weight:700;border-top:1px solid var(--line);border-radius:0 0 12px 12px;margin-top:4px}
:root[data-theme="light"] .sres-i.more{color:var(--tea)}
.sres-i.more .t{flex:none}
.who-c{display:flex;align-items:center;gap:10px;min-width:0}
.who-c > .ic,.who-c > .ti{flex:none;width:34px;height:34px;padding:8px;border-radius:11px;background:var(--surface-2);color:var(--tea)}
.who-c > .ti{display:grid;place-items:center;padding:0}
.who-c > div{min-width:0}
.docs-list,.acct-list{display:grid;gap:8px}
a.acct{text-decoration:none;color:var(--ink)}
a.acct:hover{box-shadow:0 0 0 1.5px var(--turmeric) inset}
.search.grow{flex:1;min-width:min(100%,260px);margin:0}
button.plan{border:0;font:inherit;color:var(--ink);text-align:left;cursor:pointer}
button.plan:hover{box-shadow:0 0 0 1.5px var(--turmeric) inset,var(--shadow)}
.plan.off{opacity:.55}
.plan.cur{box-shadow:0 0 0 2px var(--pass) inset,var(--shadow)}
.chip.xs{min-height:22px;padding:0 7px;font-size:11px}

/* ---------- motion: smooth, cheap (only opacity and transform), and off when the device or Settings ask ---------- */
/* A page's parts come in one after another, once; the parts inside them don't animate again on their own. */
.page{animation:none}
.page > *{animation:fadeUp .42s var(--ease) both}
.page > :nth-child(2){animation-delay:.04s}
.page > :nth-child(3){animation-delay:.08s}
.page > :nth-child(4){animation-delay:.12s}
.page > :nth-child(5){animation-delay:.16s}
.page > :nth-child(n+6){animation-delay:.2s}
.page .a-sec,.page .urow,.page .uform,.page .group,.page .mx-card,.page .a-login{animation:none}
.page.is-loading > *{animation:fadeIn .25s ease .2s both}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
/* The ambient background is painted on its own layer, so it never makes the page above it stutter. */
.fx{contain:strict;transform:translateZ(0)}
.bar,.bnav{transform:translateZ(0)}
/* Press feedback on everything tappable. */
.btn,.tile,.choice,.kpi,.chip,.acct,button.plan,.set-nav a,.ltabs > a,.ltabs > button{transition:transform .18s var(--ease),box-shadow .2s,background-color .2s,color .2s,opacity .2s}
.btn:active,.tile:active,.choice:active,.kpi:active,.chip:active,a.acct:active,button.plan:active{transform:scale(.97)}
@media (hover:hover){.tile:hover,.kpi:hover,button.plan:hover,a.acct:hover{transform:translateY(-2px)}}
/* Phone bottom bar: the highlight grows in under the icon. */
@media (max-width:760px){
  .bn .ic{transition:background-color .25s var(--ease),transform .3s var(--spring),width .3s var(--spring),padding .3s var(--spring)}
  .bn{transition:color .25s}
  .bn:active .ic{transform:scale(.88)}
  .bn[aria-current="page"] .ic{transform:translateY(-1px)}
}
.set-nav a{transition:background-color .25s var(--ease),color .25s}
html.no-anim .page > *{animation:none!important}

/* ---------- sideways rows: fade where there is more, grab cursor for mice ---------- */
.hs-r{-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 36px),transparent);mask-image:linear-gradient(90deg,#000 calc(100% - 36px),transparent)}
.hs-l{-webkit-mask-image:linear-gradient(90deg,transparent,#000 36px);mask-image:linear-gradient(90deg,transparent,#000 36px)}
.hs-l.hs-r{-webkit-mask-image:linear-gradient(90deg,transparent,#000 36px,#000 calc(100% - 36px),transparent);mask-image:linear-gradient(90deg,transparent,#000 36px,#000 calc(100% - 36px),transparent)}
@media (hover:hover) and (pointer:fine){.hs-l,.hs-r{cursor:grab}}
.hs-drag,.hs-drag *{cursor:grabbing!important;user-select:none}

/* ---------- filter bar over lists ---------- */
.fbar{display:grid;gap:8px;min-width:0}
.fbar .search.sm input{height:44px;border-radius:14px;font-size:15px;padding:0 40px}
.fbar .search.sm svg{left:14px;width:17px;height:17px}
.fbar .chips{padding-bottom:4px}
.fbar .chip{min-height:34px;padding:0 12px;font-size:13px}
.fmeta:empty{display:none}
.fmeta .linkbtn{margin-left:auto}
.a-sec > .fbar,.sec > .fbar{padding:12px 16px 4px}
