/* 1ARC Studio: a shared visual hierarchy, native controls and progressive CSS. */
:root{--studio-blue:#2457D6;--studio-green:#16724E;--studio-purple:#7650CF;--studio-orange:#B34C10;--studio-radius:24px;--studio-shadow:0 12px 40px rgba(0,0,0,.035)}
@media(prefers-color-scheme:dark){:root:not([data-theme="light"]){--studio-blue:#A8C7FF;--studio-green:#91D9BA;--studio-purple:#C6B4FF;--studio-orange:#FFBA8D}}
:root[data-theme="dark"],:root[data-palette="nieve"],:root[data-palette="brasa"],:root[data-palette="oro"]{--studio-blue:#A8C7FF;--studio-green:#91D9BA;--studio-purple:#C6B4FF;--studio-orange:#FFBA8D}
body{font-variant-numeric:tabular-nums}
.page{width:min(100%,1080px);margin-inline:auto;padding-inline:24px;gap:28px}
.page>.p-bar{min-height:72px}
.page:not(.arc-home)>.p-bar{margin-inline:-24px;padding-inline:24px;background:var(--bg);backdrop-filter:none;-webkit-backdrop-filter:none}
.p-bar .logo{width:94px;max-height:34px}
.p-title,.life-heading h1{font-size:clamp(30px,5vw,42px);font-weight:700;letter-spacing:-.045em;line-height:1.1}
.p-sub{max-width:58ch;line-height:1.55}
.btn{min-height:48px;border-radius:16px;padding:12px 20px;line-height:1.3;white-space:normal}
.btn-sm{min-height:44px;padding:10px 16px;border-radius:13px}
.icon-btn{min-width:44px;min-height:44px}
.btn:disabled{opacity:.45;cursor:default}
.text-in{border:1px solid var(--line);background:var(--surface);min-height:50px;border-radius:14px}
.text-in:focus-visible,button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid var(--signal);outline-offset:3px}
.tabbar{background:var(--bg);backdrop-filter:none;-webkit-backdrop-filter:none;border-top:1px solid var(--line);padding-top:6px}
.tabbar a{gap:4px;font-size:.6875rem;min-height:58px;color:var(--muted)}
.tabbar a[aria-current="page"]{color:var(--ink)}
.tabbar a[aria-current="page"] .tab-ic{background:var(--fill);border-radius:14px}
.tabbar .tab-ic{display:grid;place-items:center;width:48px;height:30px}
.tabbar .tab-orb{box-shadow:none!important;transform:none!important;background:var(--accent);color:var(--on-accent);width:44px;height:36px;border-radius:14px;border:0!important}
.tabbar .tab-orb svg{width:22px;height:22px}
.studio-eyebrow{font-size:.625rem!important;font-weight:700!important;letter-spacing:.15em!important;text-transform:uppercase!important;color:var(--muted);margin:0 0 12px}
.studio-heading h1{font:700 clamp(34px,6vw,56px)/1.04 var(--body);letter-spacing:-.055em;margin:0;text-wrap:balance}
.studio-heading>p:last-child{font-size:.9375rem;color:var(--muted);margin:14px 0 0;max-width:52ch}
.studio-local{font-size:.75rem;color:var(--muted);display:flex;gap:8px;align-items:center}
.studio-local svg{width:15px;height:15px;flex:none}
.studio-explore{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}
.studio-tool{padding:22px;background:var(--surface);border:1px solid var(--hair);border-radius:var(--studio-radius);text-decoration:none;display:flex;gap:16px;align-items:flex-start;box-shadow:var(--studio-shadow);transition:border-color .2s,transform .2s;min-width:0}
.studio-tool>div{flex:1;min-width:0}
.studio-tool>svg{width:18px;height:18px;color:var(--muted);margin-top:10px;flex:none}
.studio-tool h2{font:650 1.25rem/1.2 var(--body);letter-spacing:-.025em;margin:3px 0 7px}
.studio-tool p{font-size:.8125rem;color:var(--muted);line-height:1.5;margin:0}
.studio-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:13px;color:var(--signal);background:var(--fill);flex:none}
.tone-blue .studio-icon{color:var(--studio-blue)}.tone-green .studio-icon{color:var(--studio-green)}.tone-purple .studio-icon{color:var(--studio-purple)}.tone-orange .studio-icon{color:var(--studio-orange)}
.studio-footnote{font-size:.75rem;color:var(--muted);line-height:1.6;margin:0;max-width:76ch}
.studio-block,.studio-upsell{background:var(--surface);border:1px solid var(--hair);border-radius:var(--studio-radius);padding:26px;display:flex;flex-direction:column;gap:18px;box-shadow:var(--studio-shadow);min-width:0}
.studio-block>header{display:flex;justify-content:space-between;align-items:center;gap:12px}
.studio-block h2{font-size:1.625rem;line-height:1.15;letter-spacing:-.04em;margin:0}
.studio-block>p{font-size:.875rem;line-height:1.6;color:var(--muted);margin:0;max-width:62ch}
.studio-block>.btn{align-self:flex-start}
.studio-empty{border:1px dashed var(--line);border-radius:16px;padding:18px;color:var(--muted);display:flex;align-items:center;gap:14px;font-size:.8125rem}
.studio-empty svg{flex:none}
.studio-saved>div{display:flex;align-items:center;gap:8px;padding:14px 0;border-bottom:1px solid var(--hair)}
.studio-saved>div>span{flex:1;min-width:0;overflow-wrap:anywhere}
.studio-saved b,.studio-saved small{display:block}.studio-saved small{font-size:.75rem;color:var(--muted);margin-top:4px}
.studio-focus-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px}
.studio-focus-list>div{display:flex;align-items:center;border-radius:16px;background:var(--fill);padding:6px}
.studio-focus-list>div>button:first-child{flex:1;min-width:0;border:0;background:none;text-align:left;padding:12px;display:grid;gap:12px}
.studio-focus-list b{overflow-wrap:anywhere}.studio-focus-list span{font-size:.8125rem;color:var(--muted);display:flex;align-items:center;justify-content:space-between}.studio-focus-list svg{width:16px;height:16px}
.studio-upsell{background:linear-gradient(125deg,var(--surface),color-mix(in srgb,var(--signal) 9%,var(--surface)));position:relative;overflow:hidden}
.studio-upsell h2{font-size:2.125rem;line-height:1.1;letter-spacing:-.045em;margin:0}
.studio-upsell p{font-size:.875rem;color:var(--muted);max-width:52ch;margin:0}
.studio-upsell .pro-tag{align-self:flex-start}.studio-upsell>.btn{align-self:flex-start}
.studio-sheet{gap:18px}.studio-sheet form{display:flex;flex-direction:column;gap:14px;min-width:0}.studio-sheet label{margin:0}
.studio-preview{list-style:none;padding:0;margin:0 0 16px;display:grid;gap:8px;max-height:38dvh;overflow:auto}
.studio-preview li{padding:12px;background:var(--fill);border-radius:12px;overflow-wrap:anywhere}
.studio-preview time{display:block;font-size:.6875rem;color:var(--muted);margin-bottom:4px}
.studio-table-wrap{max-width:100%;overflow-x:auto}
.studio-table{border-collapse:collapse;width:100%;font-size:.8125rem}
.studio-table caption{text-align:left;color:var(--muted);font-size:.75rem;margin:0 0 14px;caption-side:bottom;padding-top:16px}
.studio-table th,.studio-table td{text-align:right;padding:14px 8px;border-bottom:1px solid var(--line)}
.studio-table th:first-child{text-align:left;min-width:120px}.studio-table thead{font-size:.625rem;color:var(--muted)}
.studio-home-intro{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.studio-home-intro .life-hello{font-size:.75rem;color:var(--muted);display:block;margin:0 0 12px}
.studio-home-intro h1{font:700 clamp(34px,6vw,52px)/1.06 var(--body);letter-spacing:-.055em;margin:0}
.studio-home-intro .studio-date{font-size:.75rem;color:var(--muted);margin:12px 0 0;text-transform:capitalize}
.studio-day-ring{position:relative;flex:none;margin-top:24px;width:64px;height:64px;display:grid;place-items:center}
.studio-day-ring svg{position:absolute;inset:0;width:64px;height:64px;transform:rotate(-90deg)}
.studio-day-ring circle{fill:none;stroke:var(--fill);stroke-width:5}.studio-day-ring circle+circle{stroke:var(--signal);stroke-linecap:round}.studio-day-ring b{font-size:.9375rem}
.studio-home-nav{display:flex;gap:8px;flex-wrap:wrap}.studio-home-nav a{display:inline-flex;align-items:center;gap:7px;font-size:.75rem;min-height:40px;padding:8px 12px;background:var(--fill);border-radius:12px;text-decoration:none}.studio-home-nav svg{width:16px;height:16px}
.studio-home-hero{border:1px solid var(--hair);border-radius:26px;padding:24px;background:var(--surface);position:relative;overflow:hidden;box-shadow:var(--studio-shadow)}
.studio-home-hero h2{font-size:1.6875rem;line-height:1.15;letter-spacing:-.04em;max-width:17ch;margin:0 0 10px}.studio-home-hero>p:not(.studio-eyebrow){font-size:.875rem;color:var(--muted);max-width:40ch;margin:0 0 22px}.studio-home-hero .btn{position:relative;z-index:1}
.studio-home-hero::after{content:"";position:absolute;width:180px;height:180px;right:-55px;top:-55px;border:28px solid var(--fill);border-radius:50%;pointer-events:none}
.life-today .life-section-head{justify-content:space-between}.life-today .life-section-head h2{font-size:1.125rem}.life-today .life-ring{width:30px;height:30px}
.life-daily{padding:22px;border:1px solid var(--hair)}.life-daily h2{font-size:1.5rem}.life-daily details{margin-top:8px}
.life-welcome,.life-checkin{padding:24px;border:1px solid var(--hair)}
.flags{gap:12px}.flag{border-radius:24px!important;min-height:190px!important;border:1px solid var(--hair)!important;box-shadow:none!important}.flag-t{font-size:1.4375rem!important}.flag-brand{font-size:.6875rem!important;letter-spacing:.04em}.flag-s{line-height:1.5}
.studio-training-free{display:inline-flex;align-items:center;gap:6px;font-size:.6875rem;font-weight:600;color:var(--muted)}
.rnew{border-radius:24px;overflow:hidden;border:1px solid var(--hair)}.rcard{border-radius:24px}.rc-head h3{font-size:1.4375rem;letter-spacing:-.04em}.rc-days>li{padding-block:16px}
.pw{gap:20px}.pw-title{font:700 clamp(30px,8vw,38px)/1.08 var(--body)!important;letter-spacing:-.05em!important}.pw-sub{font-size:.9375rem;line-height:1.6;color:var(--muted)}
.pw .pw-kicker{font-size:.625rem;letter-spacing:.18em}.pw-list{gap:16px}.pw-list li small{line-height:1.5}.pw .plans{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.pw .plan span{min-width:0}.pw .plan em{font-size:1.25rem}.pw-legal{line-height:1.6}
.studio-free-strip{padding:16px 18px;background:var(--fill);border-radius:16px;font-size:.75rem;line-height:1.6;color:var(--muted)}.studio-free-strip b{color:var(--ink)}
.studio-pro-bridge{display:flex;align-items:center;gap:14px;padding:18px;border:1px solid var(--line);border-radius:20px;text-decoration:none}.studio-pro-bridge>div{flex:1;min-width:0}.studio-pro-bridge b,.studio-pro-bridge small{display:block}.studio-pro-bridge small{font-size:.75rem;color:var(--muted);margin-top:4px}
@media(hover:hover){.studio-tool:hover{border-color:var(--signal);transform:translateY(-2px)}.studio-home-nav a:hover{background:var(--surface2)}}
@media(min-width:800px){.page{padding-top:12px}.studio-page{max-width:1000px}.studio-heading{padding-block:20px}.life-page{max-width:900px}.flags{grid-template-columns:repeat(2,minmax(0,1fr))}.studio-home-intro{padding-block:12px}.studio-home-hero{padding:32px}.studio-home-hero h2{font-size:2.25rem;max-width:none}.studio-block{padding:32px}.tabbar>nav{max-width:650px;margin:auto}}
@media(max-width:540px){.studio-explore{grid-template-columns:1fr}.studio-tool{padding:20px}.studio-tool h2{font-size:1.1875rem}.studio-block{padding:21px}.studio-block h2{font-size:1.5625rem}.page{padding-inline:20px;gap:24px}.page:not(.arc-home)>.p-bar{margin-inline:-20px;padding-inline:20px}.studio-table th,.studio-table td{padding-inline:5px;font-size:.6875rem}}
@media(max-width:350px){.page{padding-inline:16px}.page:not(.arc-home)>.p-bar{margin-inline:-16px;padding-inline:16px}.studio-day-ring{width:50px;height:50px}.studio-day-ring svg{width:50px;height:50px}.studio-home-intro h1{font-size:2rem}.flags{grid-template-columns:1fr}.studio-block{padding:18px}.pw .plan em{font-size:1.0625rem}}
@media(prefers-reduced-motion:reduce){.studio-tool{transition:none}.studio-tool:hover{transform:none}}
@media(prefers-contrast:more){.studio-tool,.studio-block,.studio-home-hero,.life-daily{border-color:var(--ink)}}
