@import url('./home-tokens.css');
/* The pilot replaces the Home presentation, leaving other flows on their
   approved styles. All geometry for overlays remains in overlays.css. */
body:has(.phase5-home){background:var(--dp-bg)}
body:has(.phase5-home)::before{
 background:radial-gradient(ellipse at 8% 30%,#ffffff04,transparent 44%),radial-gradient(ellipse at 98% 2%,#c8834008,transparent 50%),radial-gradient(ellipse at 88% 86%,#ffffff03,transparent 40%),var(--dp-bg);
}
body:has(.phase5-home)::after{
 background-image:none;opacity:1;inset:auto -140px -290px auto;width:650px;height:720px;
 border:1px solid #ffffff06;border-radius:43% 57% 63% 37%;transform:rotate(-24deg);
 box-shadow:0 0 0 70px #ffffff03,0 0 0 142px #ffffff02;
}
:root[data-theme=light] body:has(.phase5-home){background:var(--dp-bg)}
:root[data-theme=light] body:has(.phase5-home)::before{background:radial-gradient(ellipse at 4% 30%,#ffffff18,transparent 50%),radial-gradient(ellipse at 96% 10%,#dccab80c,transparent 50%),var(--dp-bg)}
.phase5-home{--home-gutter:32px;max-width:1600px;margin:0 auto;padding:calc(var(--safe-top) + 24px) max(var(--home-gutter),var(--safe-right)) 0 max(var(--home-gutter),var(--safe-left));color:var(--dp-ink)}
.phase5-home .topbar,.phase5-home .calendar-area,.phase5-home .summary,.phase5-home .home-bottom-nav{
 border:1px solid var(--dp-line);background:var(--dp-panel);box-shadow:var(--dp-shadow);
 -webkit-backdrop-filter:blur(var(--dp-blur)) saturate(var(--dp-saturation));backdrop-filter:blur(var(--dp-blur)) saturate(var(--dp-saturation));
}
.phase5-home .topbar{height:68px;min-height:68px;padding:0 22px;margin:0;border-radius:var(--dp-radius-bar);background:var(--dp-nav)}
.phase5-home .topbar::before{content:none}
.phase5-home .brand{font-size:19px;letter-spacing:-.6px;gap:12px}
.phase5-home .brandmark{width:34px;height:34px}
.phase5-home .header-right{gap:8px}
.phase5-home .icon-button,.phase5-home .account-trigger{min-width:44px;min-height:44px;border-radius:var(--dp-radius-control)}
.phase5-home .account-trigger{border-color:var(--dp-line);padding:4px 12px 4px 6px}
.phase5-home .account-avatar{background:var(--dp-inset);color:var(--dp-accent-text);border-color:var(--dp-line);width:32px;height:32px}
.phase5-home main{max-width:none;padding:0}
.phase5-home .clients{flex:1;min-width:0;margin:0;padding:0 20px;gap:8px;border:0;background:none;box-shadow:none;backdrop-filter:none}.phase5-home .clients .nav-label{display:none}.phase5-home .brand{flex-shrink:0}.phase5-home .header-right{flex-shrink:0}.phase5-home .client-tabs{overscroll-behavior-x:contain}
.phase5-home .nav-label,.phase5-home .eyebrow{font-size:var(--dp-type-meta);letter-spacing:1.5px;line-height:1.5;color:var(--dp-muted)}
.phase5-home .client-tabs{gap:8px;flex:1;padding:3px 0}
.phase5-home .client-tab{border-radius:999px;min-height:44px;padding:6px 14px 6px 7px;gap:9px;border:1px solid transparent;color:var(--dp-muted)}
.phase5-home .client-initial{width:30px;height:30px;border-radius:50%;font-size:12px;background:var(--dp-inset);color:var(--dp-muted)}
.phase5-home .client-tab.selected{background:linear-gradient(130deg,#ff7a1a1a,#ff7a1a07);border-color:#ff7a1a30;color:var(--dp-ink);box-shadow:var(--dp-ring),inset 0 1px var(--dp-highlight)}
.phase5-home .client-tab.selected .client-initial{background:#ff7a1a24;color:var(--dp-accent-text)}
.phase5-home .selection-dot{margin-left:3px;background:var(--dp-accent)}
.phase5-home .add-client{border-style:solid;border-color:var(--dp-line)}
.phase5-home .workspace-heading{padding:30px 4px 24px;gap:20px}
.phase5-home h1{font-size:32px;letter-spacing:-1.1px;line-height:1.2;margin:5px 0 0;font-weight:550}
.phase5-home .heading-dot{color:var(--dp-warm)}
.phase5-home .client-heading{align-items:center}
.phase5-home .workspace-actions{gap:12px}
.phase5-home .view-switch{background:var(--dp-inset);border-color:var(--dp-line);border-radius:17px;padding:4px}
.phase5-home .view-switch button{min-height:36px;border-radius:12px;font-size:14px}
.phase5-home .view-switch .active{background:var(--dp-nav);border-color:var(--dp-line-strong);box-shadow:inset 0 1px var(--dp-highlight)}
.phase5-home .primary,#drawer.record-drawer .primary{
 border-radius:var(--dp-radius-control);min-height:46px;font-size:14px;padding:10px 18px;color:var(--dp-on-accent);
 background:linear-gradient(145deg,var(--dp-accent),#f37112);border-color:#ffad5826;
 box-shadow:inset 0 1px #ffffff60,var(--dp-glow);transition:box-shadow var(--dp-motion),transform var(--dp-motion);
}
.phase5-home .secondary,#drawer.record-drawer .secondary{border-radius:var(--dp-radius-control);min-height:44px;background:var(--dp-inset);border-color:var(--dp-line-strong);font-size:14px;color:var(--dp-ink)}
.phase5-home .content-layout{grid-template-columns:minmax(0,1fr) 300px;gap:22px;align-items:start}
.phase5-home .calendar-area{border-radius:var(--dp-radius-panel);padding:22px;scroll-margin-top:20px}
.phase5-home .calendar-toolbar{margin:0 0 18px;min-height:44px}
.phase5-home .period-trigger{font-size:19px;gap:7px}
.phase5-home .period-trigger span{color:var(--dp-muted);font-size:15px}
.phase5-home .today-button{border:1px solid var(--dp-line);border-radius:14px;font-size:14px}
.phase5-home .month-calendar{background:var(--dp-inset);border:1px solid var(--dp-line);border-radius:18px}
.phase5-home .weekdays{height:40px;border-color:var(--dp-line)}
.phase5-home .weekdays span{font-size:11px;color:var(--dp-muted);letter-spacing:1px}
.phase5-home .days-grid{grid-auto-rows:minmax(clamp(68px,calc((100dvh - 430px)/var(--calendar-rows,5)),108px),auto)}
.phase5-home .month-calendar .day{padding:9px 6px;min-height:0;border-color:var(--dp-line);background:transparent}
.phase5-home .day-number{font-size:12px;color:var(--dp-muted)}
.phase5-home .today .day-number{background:var(--dp-accent);color:var(--dp-on-accent);box-shadow:0 0 0 4px #ff7a1a0a}
.phase5-home .day.outside{background:var(--dp-inset);opacity:var(--calendar-outside-opacity,.4)}
.phase5-home .event{border-radius:8px;padding:6px;box-shadow:inset 0 1px #ffffff04;background:color-mix(in srgb,var(--person-color) 10%,var(--dp-inset));border:1px solid color-mix(in srgb,var(--person-color) 18%,transparent)}
.phase5-home .event-name{font-size:12px;line-height:1.35;color:var(--dp-ink)}
.phase5-home .event-person{font-size:11px;line-height:1.5}
/* Light calendar hierarchy: presentation only; preserve dark and geometry. */
:root[data-theme=light] .phase5-home .month-calendar{background:rgba(255,250,244,.30);border-color:rgba(70,55,43,.10)}
:root[data-theme=light] .phase5-home .weekdays{border-color:rgba(70,55,43,.10)}
:root[data-theme=light] .phase5-home .month-calendar .day{border-color:rgba(70,55,43,.10)}
:root[data-theme=light] .phase5-home .day:not(.outside):not(.today) .day-number{color:var(--dp-ink)}
:root[data-theme=light] .phase5-home .day.outside{background:rgba(99,82,65,.035);opacity:1}
:root[data-theme=light] .phase5-home .day.outside .day-number{color:#a69b90;opacity:1}
:root[data-theme=light] .phase5-home .event{background:color-mix(in srgb,var(--person-color) 9%,rgba(255,252,247,.88));border-color:color-mix(in srgb,var(--person-color) 23%,transparent);box-shadow:0 1px 3px #49362608,inset 0 1px #ffffff70}
.phase5-home .calendar-after-actions{display:none}
.phase5-home .mini-month{background:var(--dp-inset);border:1px solid var(--dp-line);border-radius:18px;box-shadow:inset 0 1px var(--dp-highlight)}
.phase5-home .summary{display:block;margin:0;padding:26px 24px;border-radius:var(--dp-radius-panel);scroll-margin-top:20px}
.phase5-home .summary-heading{padding:0}
.phase5-home .summary-heading>svg{color:var(--dp-warm)}
.phase5-home .summary-period{margin-top:14px;font-size:14px;color:var(--dp-muted)}
.phase5-home .total-value{font-size:38px;letter-spacing:-1.5px;font-weight:500;line-height:1.2;margin-top:12px;font-variant-numeric:tabular-nums;color:var(--dp-ink)}
.phase5-home .total-label{font-size:12px;color:var(--dp-muted);margin-top:6px}
.phase5-home .count-line{padding:16px 0;margin-top:14px;border-bottom:1px solid var(--dp-line);font-size:14px}
.phase5-home .count-line strong{color:var(--dp-ink);font-size:18px}
.phase5-home .summary-divider{display:none}
.phase5-home .people-heading{margin-top:22px}
.phase5-home .person-row{padding:14px 0;gap:10px;border-color:var(--dp-line)}
.phase5-home .avatar{border-radius:12px;width:34px;height:34px;flex-shrink:0}
.phase5-home .person-info strong,.phase5-home .person-value{font-size:14px;color:var(--dp-ink)}
.phase5-home .person-info span{font-size:12px;color:var(--dp-muted)}
.phase5-home .distribution{height:5px;border-radius:999px;overflow:hidden;margin:12px 0 24px;background:var(--dp-inset)}
.phase5-home .summary-panel-action{width:100%;margin:0}
.phase5-home .summary-note{border:0;padding:0;margin:22px 0 0;gap:10px;align-items:center}
.phase5-home .summary-note svg{color:var(--dp-warm)}
.phase5-home .summary-note p{font-size:12px;line-height:1.65;margin:0;color:var(--dp-muted)}
.phase5-home main>footer{margin:26px 4px 0;padding:0 0 24px;border:0;color:var(--dp-muted);font-size:12px}
.phase5-home .home-bottom-nav{display:none}
/* One representative dialog family; validated scroll/outer safe areas untouched. */
#overlay-root #drawer.record-drawer{background:var(--dp-panel);border-color:var(--dp-line-strong);border-radius:var(--dp-radius-panel);box-shadow:var(--dp-shadow);backdrop-filter:blur(var(--dp-blur)) saturate(var(--dp-saturation));-webkit-backdrop-filter:blur(var(--dp-blur)) saturate(var(--dp-saturation))}
#drawer.record-drawer h2{font-size:27px;letter-spacing:-.8px;color:var(--dp-ink)}
#drawer.record-drawer .eyebrow{color:var(--dp-warm);font-size:12px}
#drawer.record-drawer :is(input:not([type=date]):not([type=checkbox]),select,textarea){background:var(--dp-field);border:1px solid var(--dp-line-strong);border-radius:var(--dp-radius-input);color:var(--dp-ink);min-height:46px;font-size:16px}
#drawer.record-drawer input[type=date]{background:var(--dp-field);color:var(--dp-ink);border-color:var(--dp-line-strong)}
#drawer.record-drawer label{color:var(--dp-muted);font-size:14px;line-height:1.6}
#overlay-root #drawer.record-drawer.structured-dialog .drawer-footer{background:var(--dp-nav);border-color:var(--dp-line-strong);backdrop-filter:blur(44px) saturate(var(--dp-saturation));-webkit-backdrop-filter:blur(44px) saturate(var(--dp-saturation))}
.phase5-home [hidden]{display:none!important}
@media(hover:hover) and (pointer:fine){
 .phase5-home .primary:hover,#drawer.record-drawer .primary:hover{background:linear-gradient(145deg,var(--dp-accent),#f37112);box-shadow:inset 0 1px #ffffff80,0 8px 30px #ff7a1a35;transform:translateY(-1px)}
 .phase5-home .client-tab:hover,.phase5-home .secondary:hover,.phase5-home .icon-button:hover{background:var(--dp-highlight)}
 .phase5-home .day:hover:not(.outside){background:var(--dp-highlight)}
}
@media(min-width:701px) and (max-width:1100px){
 .phase5-home{--home-gutter:24px}.phase5-home .content-layout{grid-template-columns:minmax(0,1fr)}
 .phase5-home .summary{max-width:none}.phase5-home .people-list{display:flex;flex-wrap:wrap;gap:16px}.phase5-home .person-row{min-width:240px;flex:1}
}
@media(max-width:700px){
 .phase5-home{--home-gutter:14px;padding-top:calc(var(--safe-top) + 12px);padding-bottom:calc(100px + var(--safe-bottom))}
 .phase5-home .topbar{height:56px;min-height:56px;padding:0 12px;border-radius:20px}
 .phase5-home .brand{font-size:16px;gap:8px}.phase5-home .brandmark{width:28px;height:28px}
 .phase5-home .header-right>.icon-button[data-action=settings]{display:none}
 .phase5-home .account-trigger{padding:4px;gap:0;border-color:transparent}
 .phase5-home .account-trigger>svg{display:none}
 .phase5-home .topbar .clients,.phase5-home .topbar .header-right{display:none}
 .phase5-home .nav-label,.phase5-home .clients>[data-action=archived]{display:none}
 .phase5-home .client-tab{padding-right:12px;min-height:44px;font-size:14px}
 .phase5-home .workspace-heading{padding:22px 4px 18px;align-items:center;gap:8px;flex-wrap:nowrap}
 .phase5-home .workspace-heading>div:first-child{width:auto;min-width:0;flex:1}
 .phase5-home .client-initial{display:grid}
 .phase5-home h1{font-size:27px;max-width:100%;margin-top:5px}
 .phase5-home .workspace-heading .eyebrow{font-size:10px;letter-spacing:1.4px}
 .phase5-home .workspace-actions{flex-wrap:nowrap;width:auto;flex:0 0 auto}
 .phase5-home .workspace-actions>[data-action=new]{display:none}
 .phase5-home .view-switch{gap:0;padding:3px}
 .phase5-home .view-switch button{font-size:12px;min-height:38px;padding:6px 9px;gap:5px}
 .phase5-home .view-switch button svg{display:none}
 .phase5-home .content-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:18px}
 .phase5-home .calendar-area{padding:14px 10px 10px;border-radius:24px}
 .phase5-home .calendar-toolbar{margin-bottom:12px;padding-inline:2px}
 .phase5-home .period-trigger{font-size:17px;gap:5px}
 .phase5-home .period-trigger span{font-size:13px}
 .phase5-home .period-navigation{gap:0}
 .phase5-home .period-navigation .icon-button{min-width:34px;width:34px}
 .phase5-home .today-button{font-size:12px;padding:6px}
 .phase5-home .month-calendar{border-radius:16px}
 .phase5-home .weekdays{height:34px}.phase5-home .weekdays span{font-size:10px;padding:0;text-align:center}
 .phase5-home .month-calendar .days-grid{grid-auto-rows:minmax(62px,auto)}
 .phase5-home .month-calendar .day{min-height:62px;padding:6px 2px}
 .phase5-home .month-calendar .day-number{font-size:12px}
 .phase5-home .summary{padding:22px;border-radius:24px}
 .phase5-home .total-value{font-size:36px}
 .phase5-home main>footer{margin-top:20px;gap:12px;flex-wrap:wrap}
 .phase5-home .home-bottom-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));position:fixed;z-index:var(--layer-header);bottom:calc(var(--safe-bottom) + 10px);left:max(28px,var(--safe-left));right:max(28px,var(--safe-right));max-width:380px;margin-inline:auto;height:72px;padding:7px;border-radius:999px;background:var(--dp-nav);box-shadow:0 8px 36px #02071055,inset 0 1px var(--dp-highlight)}
 .phase5-home .home-bottom-nav button{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:4px;min-width:0;min-height:44px;padding:3px;border-radius:999px;color:var(--dp-muted);font-size:11px;line-height:1.2}
 .phase5-home .home-bottom-nav button svg{width:20px;height:20px}
 #drawer.record-drawer .drawer-footer :is(.primary,.secondary){padding-inline:12px}
 .phase5-home .home-new-icon{display:grid;place-items:center;width:76px;height:56px;flex-shrink:0;border-radius:999px;color:var(--dp-on-accent);background:linear-gradient(145deg,var(--dp-accent),#f37112);box-shadow:var(--dp-glow)}
 .phase5-home .home-bottom-nav .home-new{color:var(--dp-ink)}
 .phase5-home .shared-client-label{font-size:0;gap:0;flex:0 0 auto}
 .phase5-home .shared-client-label svg{width:17px;height:17px}
 .phase5-home .client-heading{gap:7px}
 .phase5-home .client-heading h1{min-width:0;overflow-wrap:anywhere}
}
@media(max-width:360px){.phase5-home{--home-gutter:10px}.phase5-home .period-trigger{font-size:15px}.phase5-home .period-controls{gap:3px}.phase5-home .client-heading{gap:4px;flex-wrap:wrap}.phase5-home h1{font-size:24px}}
@media(prefers-reduced-motion:reduce){.phase5-home *{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
