/* Claro V19 — Figma-inspired Heritage Midnight. Map geometry is intentionally untouched. */
:root{
  --hm-ink:#0b0d18;--hm-panel:#111522;--hm-panel2:#171c2a;--hm-cream:#f0ead8;
  --hm-muted:#9a9dac;--hm-amber:#c9a96e;--hm-amber-soft:#2b251e;--hm-merlot:#4b1e23;
  --hm-line:rgba(240,234,216,.12);--hm-line-strong:rgba(240,234,216,.22);
  --bg:var(--hm-ink);--surface:#0f121c;--surface2:var(--hm-panel);--surface3:var(--hm-panel2);
  --panel:var(--hm-panel);--text:var(--hm-cream);--text2:#c2bdaf;--text3:var(--hm-muted);--text4:#777b89;
  --border:var(--hm-line);--border2:var(--hm-line-strong);--blue:var(--hm-amber);--blue-d:#dec28b;
  --blue-bg:var(--hm-amber-soft);--blue-bd:rgba(201,169,110,.38);--green:#8fa67a;--amber:#c9a96e;
}
html,body{background:var(--hm-ink);color:var(--hm-cream)}
body{font-family:'Instrument Sans',system-ui,sans-serif;letter-spacing:-.01em}
button,input,select,textarea{font-family:'Instrument Sans',system-ui,sans-serif}
h1,h2,h3,.phd h1,.brand .name,.sheet-hd h1,.calendar-page h1,.calendar-page h2{font-family:'Fraunces',Georgia,serif;letter-spacing:-.035em}
.eyebrow,.nav-label,.sec-t,.calendar-weekdays,.calendar-agenda-time{font-family:'JetBrains Mono',monospace;letter-spacing:.12em;text-transform:uppercase}
.side{background:#0d1018;border-color:var(--hm-line);padding:22px 14px;width:244px}
.brand{padding:3px 10px 28px}.brand .logo{background:var(--hm-cream);color:var(--hm-ink);border-radius:12px;box-shadow:none}.brand .name{font-size:18px;font-weight:600}
.nav{gap:5px}.nav-section{margin-bottom:14px}.nav-label{font-size:9px;color:#686c79;padding:7px 12px}
.nav button{min-height:48px;border-radius:12px;padding:9px 11px;color:#9295a1}.nav button:hover{background:rgba(240,234,216,.05);color:var(--hm-cream)}
.nav button.on{background:rgba(201,169,110,.12);color:var(--hm-cream);box-shadow:inset 3px 0 0 var(--hm-amber)}
.nav button.on .ic{color:var(--hm-amber)}.nav .lbl{font-weight:650}.nav-copy small{color:#777b89}
.app-topbar{height:64px;background:rgba(11,13,24,.9);border-color:var(--hm-line);backdrop-filter:blur(18px)}
.app-crumb{color:#777b89}.app-crumb b{color:#b9b5aa}.top-actions button{min-height:42px;border-radius:11px}
.top-add,.btn-p{background:var(--hm-cream)!important;color:var(--hm-ink)!important;border-color:var(--hm-cream)!important;box-shadow:none!important}
.top-add:hover,.btn-p:hover{background:#fff9e8!important}.top-search,.btn-s,.top-settings{background:var(--hm-panel)!important;color:#b9bbc5!important;border-color:var(--hm-line-strong)!important}
.main{background:radial-gradient(circle at 84% -10%,rgba(75,30,35,.16),transparent 36%),var(--hm-ink)}
.wrap{max-width:1180px;padding:42px 42px 90px}.phd{margin-bottom:30px}.phd h1{font-size:42px;font-weight:600}.phd p{color:var(--hm-muted)}
.card,.panel,.empty,.review-grid section,.activity-panel,.pm-section,.sheet,.modal{background:var(--hm-panel);border-color:var(--hm-line);box-shadow:none}
.card{border-radius:13px;transition:border-color .2s ease,background .2s ease}.card:hover{border-color:var(--hm-line-strong);background:#151a27;box-shadow:none}
.v17-task-card.primary-priority{background:linear-gradient(110deg,rgba(201,169,110,.1),var(--hm-panel) 45%);border-color:rgba(201,169,110,.35)}
.v17-task-card.primary-priority .rank{background:var(--hm-amber);color:var(--hm-ink)}
.cbtn{background:transparent;color:#d6d0c1;border-color:rgba(201,169,110,.35);border-radius:10px}.cbtn:hover{background:var(--hm-merlot);border-color:#75404a;color:var(--hm-cream)}
.field,input.field,textarea.field,select.field,.native-picker{background:#121723;color:var(--hm-cream);border-color:var(--hm-line-strong);border-radius:11px}
.field::placeholder,input::placeholder,textarea::placeholder{color:#656a78}.field:focus,.native-picker:focus-within{border-color:var(--hm-amber);box-shadow:0 0 0 3px rgba(201,169,110,.1)}
.sheet,.modal{border-radius:20px}.scrim.show{background:rgba(2,4,10,.72);backdrop-filter:blur(4px)}
.today-schedule-strip{border-color:var(--hm-line)}.today-schedule-strip button{background:var(--hm-panel);border-color:var(--hm-line-strong);color:var(--hm-cream)}
.mobile-nav{background:rgba(11,13,24,.96)!important;border-color:var(--hm-line)!important;backdrop-filter:blur(20px)}
.mobile-nav button{color:#777b89}.mobile-nav button.on{color:var(--hm-amber)!important;background:transparent!important}
.mobile-nav .ic{stroke-width:1.7}

/* Calendar */
.calendar-page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:28px}
.calendar-page-head h1{font-size:46px;font-weight:600;margin:4px 0}.calendar-page-head p{margin:0;color:var(--hm-muted)}
.calendar-head-actions{display:flex;gap:9px}.calendar-head-actions button{min-height:44px;padding:0 17px;border:1px solid var(--hm-line-strong);border-radius:11px;background:var(--hm-panel);color:var(--hm-cream);font-weight:650}
.calendar-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(300px,.75fr);gap:16px;align-items:start}
.calendar-month-panel,.calendar-agenda{border:1px solid var(--hm-line);border-radius:18px;background:rgba(17,21,34,.82);overflow:hidden}
.calendar-month-head{height:72px;display:flex;align-items:center;justify-content:space-between;padding:0 22px;border-bottom:1px solid var(--hm-line)}
.calendar-month-head h2{font-size:25px;margin:0}.calendar-month-head div{display:flex;gap:7px}.calendar-month-head button{width:42px;height:42px;border-radius:10px;border:1px solid var(--hm-line);background:#151a27;color:var(--hm-cream);font-size:17px}
.calendar-weekdays,.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-weekdays{padding:13px 12px 9px;color:#777b89;font-size:9px;text-align:center}
.calendar-grid{padding:0 12px 12px}.calendar-day{min-height:92px;padding:10px;border:1px solid transparent;border-top-color:var(--hm-line);background:transparent;color:var(--hm-cream);text-align:left;position:relative;transition:.18s ease}
.calendar-day:hover{background:rgba(240,234,216,.035)}.calendar-day.outside{color:#505461}.calendar-day.selected{background:rgba(201,169,110,.1);border-color:rgba(201,169,110,.32);border-radius:10px}.calendar-day.today>span{display:grid;place-items:center;width:27px;height:27px;border-radius:50%;background:var(--hm-merlot);color:var(--hm-cream)}
.calendar-day>div{display:flex;gap:4px;margin-top:17px;flex-wrap:wrap}.calendar-day small{position:absolute;right:8px;bottom:8px;color:#777b89;font-size:9px}
.calendar-kind-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--hm-amber);flex:0 0 auto}.calendar-kind-dot.habit{background:#8fa67a}.calendar-kind-dot.repeating{background:#8b78b5}.calendar-kind-dot.calendar{background:#6f92be}.calendar-kind-dot.google{background:#4285f4}.calendar-sync-error{display:block;margin-top:8px;color:#d9a1a6;font-size:11px}
.calendar-agenda-head{padding:22px;border-bottom:1px solid var(--hm-line)}.calendar-agenda-head span{color:var(--hm-amber);font:600 9px 'JetBrains Mono';letter-spacing:.12em;text-transform:uppercase}.calendar-agenda-head h2{font-size:27px;margin:4px 0}.calendar-agenda-head small{color:var(--hm-muted)}
.calendar-agenda-list{padding:8px}.calendar-agenda-item{width:100%;min-height:66px;border:0;border-bottom:1px solid var(--hm-line);background:transparent;color:var(--hm-cream);display:flex;align-items:center;gap:10px;padding:11px;text-align:left}.calendar-agenda-item:hover{background:rgba(240,234,216,.035);border-radius:10px}.calendar-agenda-time{width:63px;color:#777b89;font-size:8px}.calendar-agenda-copy{display:flex;flex-direction:column;gap:3px;flex:1}.calendar-agenda-copy b{font-size:13px}.calendar-agenda-copy small{font-size:10px;color:var(--hm-muted)}.calendar-arrow{color:#777b89}
.calendar-empty{text-align:center;padding:48px 20px}.calendar-empty>span{font-size:32px;color:var(--hm-amber)}.calendar-empty h3{font-size:21px;margin:10px 0 4px}.calendar-empty p{color:var(--hm-muted);font-size:12px;margin:0 0 18px}

@media(max-width:980px){.wrap{padding:32px 24px 90px}.calendar-layout{grid-template-columns:1fr}.calendar-agenda{max-height:none}.calendar-day{min-height:76px}}
@media(max-width:720px){
  .wrap{padding:24px 16px calc(94px + env(safe-area-inset-bottom))}.phd h1{font-size:34px}.calendar-page-head{align-items:flex-start}.calendar-page-head h1{font-size:39px}.calendar-page-head p{font-size:12px;max-width:230px}.calendar-head-actions{flex-direction:column}.calendar-head-actions button{min-width:96px}
  .calendar-month-panel{border-radius:14px}.calendar-month-head{height:61px;padding:0 14px}.calendar-month-head h2{font-size:21px}.calendar-weekdays{padding-inline:5px}.calendar-grid{padding:0 5px 7px}.calendar-day{min-height:58px;padding:6px 4px;font-size:11px}.calendar-day>div{margin-top:8px;gap:2px}.calendar-kind-dot{width:5px;height:5px}.calendar-day small{display:none}
  .mobile-nav{grid-template-columns:repeat(5,1fr)!important}.mobile-nav button{min-width:0;padding-inline:2px}.mobile-nav button span{font-size:8px}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}
