@font-face{font-family:"Barlow Condensed";src:url(BarlowCondensed-SemiBold.ttf);font-weight:600}
@font-face{font-family:"Barlow Condensed";src:url(BarlowCondensed-Bold.ttf);font-weight:700}
@font-face{font-family:Inter;src:url(Inter-Regular.ttf);font-weight:400}
@font-face{font-family:Inter;src:url(Inter-SemiBold.ttf);font-weight:600}
:root,[data-theme=black]{
 --bg:#0A0A09;--side:#0E0D0C;--surface:#151412;--surface-2:#1C1B18;--raise:#22201C;
 --line:rgba(236,224,200,.09);--line-2:rgba(236,224,200,.16);
 --ink:#F4ECDD;--ink-2:#B3AA98;--ink-3:#7E776A;
 --gold:#C9A45C;--gold-2:#E2C88F;--gold-soft:rgba(201,164,92,.13);--on-gold:#14110B;
 --good:#C9A45C;--hero:linear-gradient(120deg,#1A1712 0%,#120F0B 55%,#0C0B09 100%);--hero-ink:#F4ECDD;
 --shadow:0 1px 0 rgba(255,255,255,.03) inset;
 --cover-tint:linear-gradient(180deg,rgba(0,0,0,0) 35%,rgba(0,0,0,.82));
}
[data-theme=gallery]{
 --bg:#F3EDE2;--side:#EDE5D7;--surface:#FBF8F2;--surface-2:#F4EEE4;--raise:#FFFFFF;
 --line:rgba(28,23,15,.10);--line-2:rgba(28,23,15,.18);
 --ink:#15130F;--ink-2:#5E5648;--ink-3:#8A8171;
 --gold:#9A7633;--gold-2:#7D5E24;--gold-soft:rgba(154,118,51,.11);--on-gold:#FBF8F2;
 --hero:linear-gradient(120deg,#FBF8F2,#F1E8D8);--hero-ink:#15130F;
 --shadow:0 1px 2px rgba(40,30,10,.04),0 8px 24px rgba(40,30,10,.04);
}
*{box-sizing:border-box;margin:0;padding:0}
html,body{background:var(--bg);color:var(--ink);font:400 14px/1.5 Inter,system-ui,sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
.app{display:grid;grid-template-columns:248px 1fr;min-height:100vh}
/* sidebar */
.side{position:sticky;top:0;height:100vh;background:var(--side);border-right:1px solid var(--line);display:flex;flex-direction:column;padding:24px 16px}
.brand{display:flex;align-items:center;gap:12px;padding:0 8px 32px}
.brand img{width:36px;height:36px;object-fit:contain}
[data-theme=gallery] .brand img{filter:brightness(0) saturate(100%) invert(9%)}
.brand b{font:700 18px/1 "Barlow Condensed";letter-spacing:.14em;text-transform:uppercase;display:block}
.brand small{font-size:12px;color:var(--gold);display:block;margin-top:4px}
.navlabel{font:600 11px/1 Inter;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);padding:16px 12px 8px}
.nav a{display:flex;align-items:center;gap:12px;height:40px;padding:0 12px;border-radius:8px;color:var(--ink-2);font-weight:600;font-size:14px;position:relative}
.nav a:hover{background:var(--surface-2);color:var(--ink)}
.nav a.on{background:var(--gold-soft);color:var(--ink)}
.nav a.on::before{content:"";position:absolute;left:-16px;top:8px;bottom:8px;width:3px;border-radius:0 3px 3px 0;background:var(--gold)}
.nav a.on svg{color:var(--gold)}
.side .me{margin-top:auto;display:flex;gap:12px;align-items:center;padding:16px 8px 0;border-top:1px solid var(--line)}
.av{width:36px;height:36px;border-radius:50%;background:var(--surface-2);border:1px solid var(--line-2);display:grid;place-items:center;font:700 14px "Barlow Condensed";letter-spacing:.04em;color:var(--gold);flex:none}
.av.lg{width:64px;height:64px;font-size:24px}
.me b{display:block;font-size:13px}.me span{font-size:12px;color:var(--ink-3)}
svg.i{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex:none}
/* top */
.top{position:sticky;top:0;z-index:5;height:64px;display:flex;align-items:center;gap:16px;padding:0 40px;background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.crumb{font-size:13px;color:var(--ink-3)}.crumb b{color:var(--ink);font-weight:600}
.search{margin-left:auto;display:flex;align-items:center;gap:8px;height:40px;width:280px;padding:0 12px;border:1px solid var(--line);border-radius:8px;color:var(--ink-3);background:var(--surface)}
.search kbd{margin-left:auto;font:600 11px Inter;border:1px solid var(--line-2);border-radius:4px;padding:0 4px}
.ib{width:40px;height:40px;border-radius:8px;display:grid;place-items:center;color:var(--ink-2);border:1px solid var(--line);background:var(--surface);position:relative}
.ib .dot{position:absolute;top:8px;right:8px;width:8px;height:8px;border-radius:50%;background:var(--gold);border:2px solid var(--surface)}
.theme{display:flex;border:1px solid var(--line);border-radius:8px;padding:4px;background:var(--surface);gap:4px}
.theme button{height:30px;padding:0 12px;border-radius:5px;font:600 12px Inter;color:var(--ink-2)}
.theme button.on{background:var(--gold);color:var(--on-gold)}
/* layout */
main{min-width:0}
.page{max-width:1240px;margin:0 auto;padding:40px 40px 64px}
.grid{display:grid;grid-template-columns:repeat(12,1fr);gap:24px}
.s3{grid-column:span 3}.s4{grid-column:span 4}.s5{grid-column:span 5}.s6{grid-column:span 6}.s7{grid-column:span 7}.s8{grid-column:span 8}.s9{grid-column:span 9}.s12{grid-column:span 12}
.stack{display:flex;flex-direction:column;gap:24px}
.eyebrow{font:600 11px/1 Inter;letter-spacing:.16em;text-transform:uppercase;color:var(--gold)}
.h1{font:700 48px/1 "Barlow Condensed";text-transform:uppercase;letter-spacing:.01em;margin-top:8px}
.h2{font:700 24px/1.1 "Barlow Condensed";text-transform:uppercase;letter-spacing:.03em}
.h3{font:700 18px/1.2 "Barlow Condensed";text-transform:uppercase;letter-spacing:.04em}
.sub{color:var(--ink-2);margin-top:8px;font-size:15px}
.muted{color:var(--ink-2)}.faint{color:var(--ink-3)}
.head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:32px}
.head .actions{display:flex;gap:8px}
.card{background:var(--surface);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow)}
.pad{padding:24px}.pad-s{padding:16px}
.ch{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 24px;border-bottom:1px solid var(--line)}
.ch .link,.link{font:600 12px Inter;color:var(--gold);letter-spacing:.02em;display:inline-flex;gap:4px;align-items:center}
.btn{height:40px;padding:0 16px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font:600 13px Inter;border:1px solid var(--line-2);background:var(--surface);color:var(--ink);white-space:nowrap}
.btn:hover{border-color:var(--gold)}
.btn.gold{background:var(--gold);border-color:var(--gold);color:var(--on-gold)}
.btn.lg{height:48px;padding:0 24px;font-size:14px}
.btn.block{width:100%}
.btn.ghost{background:transparent}
/* tabs: one style everywhere */
.tabs{display:flex;gap:32px;border-bottom:1px solid var(--line);margin-bottom:32px}
.tabs a{height:48px;display:flex;align-items:center;gap:8px;font:600 14px Inter;color:var(--ink-3);border-bottom:2px solid transparent;margin-bottom:-1px}
.tabs a.on{color:var(--ink);border-color:var(--gold)}
.tabs a .n{font-size:11px;color:var(--ink-3);border:1px solid var(--line-2);border-radius:4px;padding:0 6px;line-height:18px}
.tag{white-space:nowrap;display:inline-flex;align-items:center;height:22px;padding:0 8px;border-radius:4px;font:600 10.5px Inter;letter-spacing:.1em;text-transform:uppercase;color:var(--gold);background:var(--gold-soft)}
.tag.plain{color:var(--ink-2);background:var(--surface-2)}
.row{display:flex;align-items:center;gap:16px}
.list>*{border-top:1px solid var(--line)}.list>*:first-child{border-top:0}
.li{display:flex;align-items:center;gap:16px;padding:16px 24px}
.li .grow{flex:1;min-width:0}
.li b{display:block;font-weight:600}.li small{color:var(--ink-3);font-size:12.5px}
.chev{color:var(--ink-3)}
.bar{height:6px;border-radius:3px;background:var(--surface-2);overflow:hidden}.bar i{display:block;height:100%;background:var(--gold);border-radius:3px}
.num{font:700 40px/1 "Barlow Condensed";letter-spacing:.01em}
.num small{font:400 14px Inter;color:var(--ink-3);margin-left:4px}
.kpis{display:grid;grid-template-columns:repeat(4,1fr)}
.kpi{padding:24px;border-left:1px solid var(--line)}.kpi:first-child{border-left:0}
.kpi .l{font:600 11px Inter;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);margin-bottom:12px}
/* hero */
.hero{border-radius:16px;background:var(--hero);border:1px solid var(--line);color:var(--hero-ink);position:relative;overflow:hidden}
[data-theme=black] .hero::after{content:"";position:absolute;inset:0;background:radial-gradient(600px 300px at 85% 0%,rgba(201,164,92,.16),transparent 70%);pointer-events:none}
.hero.img{background-size:cover;background-position:center}
.hero .in{position:relative;z-index:1;padding:40px}
/* week strip */
.week{display:grid;grid-template-columns:repeat(7,1fr);gap:8px}
.day{border:1px solid var(--line);border-radius:8px;padding:12px 8px;text-align:center;background:var(--surface-2)}
.day .d{font:600 11px Inter;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3)}
.day .m{width:24px;height:24px;border-radius:50%;margin:8px auto 0;display:grid;place-items:center;border:1px solid var(--line-2);color:var(--ink-3)}
.day.ok .m{background:var(--gold);border-color:var(--gold);color:var(--on-gold)}
.day.on{border-color:var(--gold)}
/* covers */
.cover{border-radius:8px;background-size:cover;background-position:center;position:relative;overflow:hidden;flex:none}
.cover.type{background:linear-gradient(160deg,#2a2419,#0f0d0a);display:flex;align-items:flex-end;padding:12px;font:700 16px/1 "Barlow Condensed";text-transform:uppercase;color:#E2C88F;letter-spacing:.04em}
.plan{display:flex;flex-direction:column;overflow:hidden}
.plan .cover{height:168px;border-radius:0}
.plan .b{padding:16px 20px 20px;display:flex;flex-direction:column;gap:8px;flex:1}
.plan .t{font:700 19px/1.15 "Barlow Condensed";text-transform:uppercase;letter-spacing:.03em}
.plan .meta{display:flex;justify-content:space-between;color:var(--ink-3);font-size:12.5px;margin-top:auto;padding-top:8px}
/* forms */
.field{height:40px;border:1px solid var(--line-2);border-radius:8px;background:var(--surface-2);padding:0 12px;display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--ink-2);font-size:13px}
textarea.ta{width:100%;min-height:240px;resize:none;border:0;background:transparent;color:var(--ink);font:400 17px/1.7 Inter;outline:none}
textarea.ta::placeholder{color:var(--ink-3)}
.check{width:18px;height:18px;border-radius:4px;border:1.5px solid var(--line-2);flex:none;display:grid;place-items:center}
.check.on{background:var(--gold);border-color:var(--gold);color:var(--on-gold)}
.toggle{width:40px;height:24px;border-radius:12px;background:var(--gold);position:relative;flex:none}.toggle::after{content:"";position:absolute;right:3px;top:3px;width:18px;height:18px;border-radius:50%;background:var(--on-gold)}
.seg{display:inline-flex;border:1px solid var(--line);border-radius:8px;padding:4px;gap:4px;background:var(--surface)}
.seg a{height:32px;padding:0 12px;display:flex;align-items:center;border-radius:5px;font:600 12.5px Inter;color:var(--ink-2);white-space:nowrap}
.seg a.on{background:var(--surface-2);color:var(--ink);box-shadow:inset 0 0 0 1px var(--line-2)}
/* table */
table{width:100%;border-collapse:collapse}
th{font:600 11px Inter;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);text-align:left;padding:12px 24px;border-bottom:1px solid var(--line)}
td{padding:16px 24px;border-bottom:1px solid var(--line);vertical-align:middle}
tr:last-child td{border-bottom:0}
td .who{display:flex;align-items:center;gap:12px}td .who b{display:block;font-weight:600}td .who small{color:var(--ink-3);font-size:12px}
.pips{display:flex;gap:4px}.pips i{width:12px;height:12px;border-radius:3px;background:var(--surface-2);border:1px solid var(--line-2)}.pips i.y{background:var(--gold);border-color:var(--gold)}
.ring{--p:0;width:120px;height:120px;border-radius:50%;background:conic-gradient(var(--gold) calc(var(--p)*1%),var(--surface-2) 0);display:grid;place-items:center;flex:none}
.ring>div{width:104px;height:104px;border-radius:50%;background:var(--surface);display:grid;place-items:center;text-align:center}
.ring.sm{width:56px;height:56px}.ring.sm>div{width:46px;height:46px;font:700 15px "Barlow Condensed"}
.quote{font:italic 400 20px/1.55 Georgia,"Times New Roman",serif;color:var(--ink)}
.post{padding:24px}
.post p{margin:16px 0;font-size:15px;line-height:1.65}
.post .acts{display:flex;gap:24px;color:var(--ink-3);font-size:13px;font-weight:600;padding-top:16px;border-top:1px solid var(--line)}
.post .acts span{display:inline-flex;gap:8px;align-items:center}
.ex{display:grid;grid-template-columns:40px 1fr 120px 96px;align-items:center;gap:16px;padding:14px 24px}
.ex .k{font:700 16px "Barlow Condensed";color:var(--gold)}
.ex b{font-weight:600}.ex small{display:block;color:var(--ink-3);font-size:12px}
.wkcol{display:flex;flex-direction:column;gap:8px}
.wkcol .d{font:600 11px Inter;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3)}
.wkcol .dn{font:700 28px/1 "Barlow Condensed"}
.blk{border-radius:8px;padding:12px;background:var(--surface-2);border:1px solid var(--line);font-size:12.5px}
.blk b{display:block;font:700 15px/1.15 "Barlow Condensed";text-transform:uppercase;letter-spacing:.03em;margin-bottom:4px}
.blk.g{background:var(--gold-soft);border-color:color-mix(in srgb,var(--gold) 40%,transparent)}
.blk.rest{background:transparent;border-style:dashed;color:var(--ink-3)}
.jlist a{display:block;padding:12px 16px 12px 20px;border-left:2px solid transparent;position:relative}
.jlist a b{display:block;font-weight:600;font-size:13.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.jlist a small{color:var(--ink-3);font-size:12px}
.jlist a.on{background:var(--gold-soft);border-left-color:var(--gold)}
.dstrip{display:grid;grid-template-columns:40px repeat(7,1fr) 40px;gap:8px;align-items:center}
.dstrip .dd{height:64px;border-radius:8px;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid var(--line);background:var(--surface)}
.dstrip .dd span{font:600 11px Inter;letter-spacing:.12em;color:var(--ink-3)}.dstrip .dd b{font:700 22px/1.1 "Barlow Condensed"}
.dstrip .dd.on{background:var(--gold);border-color:var(--gold);color:var(--on-gold)}.dstrip .dd.on span{color:var(--on-gold)}
.dstrip .dd.fut{color:var(--ink-3)}
.meal .mh{display:flex;justify-content:space-between;align-items:center;padding:20px 24px}
.meal .mm{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}
.meal .mm div{padding:12px 24px;font-size:12.5px;color:var(--ink-3);border-left:1px solid var(--line)}.meal .mm div:first-child{border-left:0}
.meal .mm b{color:var(--ink);font-weight:600;margin-left:4px}
.mac{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.mac .l{display:flex;justify-content:space-between;font-size:12.5px;color:var(--ink-3);margin-bottom:8px}.mac .l b{color:var(--ink)}
.dash{display:grid;grid-template-columns:repeat(2,1fr)}
.sys{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}
.sys a{display:flex;align-items:center;gap:8px;height:40px;padding:0 12px;border-radius:8px;border:1px solid var(--line);font:600 13px Inter;color:var(--ink-2);background:var(--surface)}
.sys a.on{border-color:var(--gold);color:var(--ink);background:var(--gold-soft)}.sys a.on svg{color:var(--gold)}
.kv{display:flex;justify-content:space-between;padding:12px 24px;border-top:1px solid var(--line);font-size:13.5px}.kv span{color:var(--ink-2)}.kv b{font-weight:600}
.rv{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.rvb{border:1px solid var(--line);border-radius:8px;padding:16px;background:var(--surface-2)}
.rvb .row{gap:12px}.rvb b{display:block;font-weight:600}.rvb small{color:var(--ink-3)}
.status3{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}
.status3 div{padding:16px 24px;border-left:1px solid var(--line);display:flex;gap:12px;align-items:center}.status3 div:first-child{border-left:0}
.status3 b{display:block;font-weight:600;font-size:13.5px}.status3 small{color:var(--ink-3);font-size:12px}
.o{width:18px;height:18px;border-radius:50%;border:1.5px solid var(--line-2);flex:none}
/* iPad landscape */
@media (max-width:1280px){
 .app{grid-template-columns:76px 1fr}
 .side{padding:24px 12px;align-items:center}
 .brand{padding:0 0 24px}.brand div,.navlabel,.nav a span,.me div{display:none}
 .nav a{width:48px;height:48px;justify-content:center;padding:0}
 .nav a.on::before{left:-12px}
 .side .me{padding:16px 0 0}
 .top{padding:0 32px}.search{width:200px}
 .page{padding:32px 32px 56px}
 .grid{gap:16px}.stack{gap:16px}
 .t-s12{grid-column:span 12}.t-s6{grid-column:span 6}.t-s4{grid-column:span 4}.t-s8{grid-column:span 8}
 .h1{font-size:40px}
 .t-hide{display:none!important}
 .sys{grid-template-columns:repeat(5,1fr)}
 .ex{grid-template-columns:32px 1fr 104px 80px;padding:14px 20px}
}
.bnav{display:none}
.scrollx{overflow-x:auto;scrollbar-width:none}
.scrollx::-webkit-scrollbar{display:none}
@media (max-width:600px){
 .app{display:block}
 .side{display:none}
 .top{height:56px;padding:0 16px;gap:8px}
 .top .crumb{font:700 18px "Barlow Condensed";letter-spacing:.14em;text-transform:uppercase;color:var(--ink)}
 .top .crumb span{display:none}
 .search,.ib.t-hide2{display:none}
 .theme{margin-left:auto}.theme button{padding:0 8px;font-size:11px;height:28px}
 .page{padding:24px 16px 120px}
 .grid{display:flex;flex-direction:column;gap:16px}
 .stack{gap:16px}
 .head{flex-direction:column;align-items:stretch;gap:16px;margin-bottom:24px}
 .head .actions{flex-wrap:nowrap;overflow-x:auto}
 .h1{font-size:36px}
 .hero .in{padding:24px}
 .tabs{gap:24px;overflow-x:auto;scrollbar-width:none;margin:0 -16px 24px;padding:0 16px;-webkit-mask:linear-gradient(90deg,#000 85%,transparent)}
 .tabs::-webkit-scrollbar{display:none}
 .tabs a{white-space:nowrap;flex:none}
 .seg,.sys{-webkit-mask:linear-gradient(90deg,#000 85%,transparent)}
 .seg{display:flex;overflow-x:auto;scrollbar-width:none;max-width:100%}
 .sys{display:flex;overflow-x:auto;scrollbar-width:none;margin:0 -16px;padding:0 16px}
 .sys a{flex:none}
 .kpis{grid-template-columns:1fr 1fr}.kpi{padding:16px}.kpi:nth-child(3){border-left:0}.kpi:nth-child(n+3){border-top:1px solid var(--line)}
 .num{font-size:32px}
 .ch,.li{padding-left:16px;padding-right:16px}
 .pad{padding:20px}
 .ex{grid-template-columns:28px 1fr 72px;padding:14px 16px}.ex .r{display:none}
 .mac{grid-template-columns:1fr;gap:16px}
 .dstrip{grid-template-columns:repeat(7,1fr);gap:4px}.dstrip .arr{display:none}
 .dstrip .dd{height:56px}
 .meal .mm div{padding:12px 16px}
 .rv{grid-template-columns:1fr}
 .status3{grid-template-columns:1fr}.status3 div{border-left:0;border-top:1px solid var(--line)}.status3 div:first-child{border-top:0}
 .p-hide{display:none!important}
 .p-cols1{grid-template-columns:1fr!important}
 table .p-hide{display:none}
 td,th{padding:12px 16px}
 .wkgrid{grid-template-columns:1fr!important}
 .wkcol{min-height:0;flex-direction:row;flex-wrap:wrap;align-items:center}
 .wkcol .dh{width:56px}.wkcol .blk{flex:1}
 .bnav{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;left:0;right:0;bottom:0;z-index:9;height:84px;padding:8px 8px 28px;background:color-mix(in srgb,var(--side) 94%,transparent);backdrop-filter:blur(14px);border-top:1px solid var(--line)}
 .bnav a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;font:600 10.5px Inter;color:var(--ink-3)}
 .bnav a.on{color:var(--gold)}
 .bnav svg.i{width:22px;height:22px}
 .plan .cover{height:180px}
 .fab{position:fixed;right:16px;bottom:100px;z-index:8;box-shadow:0 8px 24px rgba(0,0,0,.3)}
}
@media (min-width:601px){.fab{position:static}.p-only{display:none!important}}
.mac.v .l{flex-direction:column;gap:4px}
@media (max-width:1280px){.t-s7{grid-column:span 7}.t-s5{grid-column:span 5}}
@media (max-width:600px){
 .hero .h1{font-size:40px!important}
 .hero .btn.gold{width:100%}
 .week{gap:4px}.day{padding:8px 0;min-width:0}.day .d{font-size:10px;letter-spacing:.04em}
 .ring.sm{width:48px;height:48px}.ring.sm>div{width:40px;height:40px;font-size:13px}
}
@media (max-width:1280px) and (min-width:601px){.jr{display:grid!important;grid-template-columns:repeat(3,1fr)}.jr>*{margin:0}}
@media (max-width:600px){.jp{order:3}.jp .jlist{max-height:none!important}}
@media (max-width:600px){.head .row{align-items:flex-start}.head .ib{flex:none}.head .actions:has(.fab:only-of-type){display:contents}}
td .who b,td .who small,td.muted{white-space:nowrap}
