/* Homies Studio — shared presentation layer for every product surface. */
:root {
 --cream:#F3F0EA;--cream-deep:#E8E4DD;--card:#FCFAF6;--text:#20211F;--text-muted:#66675F;--text-faint:#696A64;--ink:#20211F;--ink-soft:#20211F;--ink-deep:#171816;--on-ink:#F3F0EA;--on-ink-muted:#D8D4CC;
 --mauve:#54564F;--mauve-deep:#40423D;--mauve-dark:#20211F;--blush:#DCD8D0;--blush-pale:#EAE7E0;--blush-wash:#F8F6F1;--line:#DCD8D0;--line-soft:#E7E3DB;--field:#F1EEE8;--soft:#EAE7E0;--hover:#EAE7E0;
 --font-ui:'Inter',sans-serif;--font-display:'Inter Tight',sans-serif;--heading-scale:1;--body-scale:1;--r-sm:10px;--r:16px;--r-lg:24px;--r-xl:32px;--shadow-sm:none;--shadow:0 12px 40px #1718160a;--shadow-lg:0 24px 80px #17181622;
 --display-weight:600;--display-style:normal;--display-tracking:-.045em;--heading-weight:600;--heading-tracking:-.035em;--green:#3D6450;--green-pale:#E7EDE6;--amber:#795F32;--amber-pale:#F1EBDD;
}
html {scroll-behavior:smooth;background:var(--cream)}
body {background:var(--cream);color:var(--text);font-family:var(--font-ui);font-size:calc(15px * var(--body-scale));line-height:1.6}
h1,h2,h3,h4,.welcome-lg,.home-price,.year-big,.tile-n {font-family:var(--font-display);font-style:normal;letter-spacing:-.04em;color:var(--text)}
h1 {font-size:calc(clamp(36px,5vw,68px) * var(--heading-scale));line-height:1.04;font-weight:600}
h2 {font-size:calc(28px * var(--heading-scale));line-height:1.15;font-weight:600}
h3 {font-size:calc(20px * var(--heading-scale));font-weight:600}
p {text-wrap:pretty}
button,a,input,select,textarea {touch-action:manipulation}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible {outline:2px solid var(--text);outline-offset:4px}
::selection {background:var(--ink);color:var(--on-ink)}
.eyebrow {font-family:var(--font-ui);font-size:14px;letter-spacing:.13em;text-transform:uppercase;font-weight:600;color:var(--text-muted)}
.btn {min-height:42px;padding:11px 19px;font-size:14px;border-radius:999px;font-weight:500;box-shadow:none;transition:background .18s,box-shadow .18s}
.btn-primary,.btn-mauve {background:var(--ink);color:var(--on-ink);border:1px solid var(--ink)}
.btn-primary:hover,.btn-mauve:hover {background:var(--mauve);color:var(--on-ink);transform:none}
.btn-ghost {background:transparent;color:var(--text);border:1px solid var(--line)}
.btn-ghost:hover {background:var(--cream-deep);color:var(--text);border-color:var(--text-muted)}
.btn-sm {min-height:36px;font-size:14px;padding:7px 13px}
.card {background:var(--card);border:0;border-radius:var(--r-lg);box-shadow:none}
.card h2,.card h3 {font-size:calc(20px * var(--heading-scale))!important}
input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]),textarea,select {background:var(--field);color:var(--text);border:1px solid var(--line);border-radius:12px;min-height:42px;box-shadow:none}
input::placeholder,textarea::placeholder {color:var(--text-faint)}
textarea {padding:12px;line-height:1.6}
label,.field label {font-size:14px;color:var(--text-muted)}
.pill,.badge {background:var(--cream-deep);color:var(--text);font-size:14px;border-radius:999px}
.av,.agent-avatar {background:var(--cream-deep);color:var(--text);font-family:var(--font-display)}
.tabs {gap:8px;border:0;margin-bottom:28px;overflow-x:auto;flex-wrap:nowrap;padding:3px 0 8px;scrollbar-width:thin}
.tab {border:1px solid var(--line);border-radius:999px;white-space:nowrap;padding:9px 17px;color:var(--text-muted);font-size:14px}
.tab.on,.tab.active {background:var(--ink);color:var(--on-ink);border-color:var(--ink)}
.tbl th {text-transform:uppercase;letter-spacing:.08em;font-size:14px;padding:15px;color:var(--text-muted);background:var(--cream)}
.tbl td {padding:18px 15px;border-color:var(--line-soft)}
.tbl tr:hover td {background:var(--hover)}
.modal,.modal-card,.modal-box {background:var(--card);color:var(--text);border-radius:28px;box-shadow:var(--shadow-lg)}
.modal-head {padding:24px;border-bottom:1px solid var(--line)}
.toast {background:var(--ink);color:var(--on-ink);border-radius:16px}
.pick-menu,.bell-panel,#results {background:var(--card);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow-lg)}
.pick-item:hover {background:var(--cream-deep)}
.empty {padding:48px 24px!important;background:var(--card)!important;border:1px solid var(--line)!important;text-align:center}
.empty h3 {margin:12px 0}
.empty p {max-width:450px;margin:auto;color:var(--text-muted)}
/* Four destinations, no permanent sidebar. */
.shell {display:block;min-height:100vh;background:var(--cream)}
.shell > div {min-width:0}
.shell .nav {position:relative;inset:auto;width:100%;height:100px;transform:none!important;display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:28px;padding:0 clamp(22px,4vw,64px);border:0;border-bottom:1px solid var(--line);border-radius:0;background:var(--cream);color:var(--text);box-shadow:none;z-index:50}
.experience-brand {font-family:var(--font-display);font-size:36px;font-weight:650;letter-spacing:-.06em;line-height:1}
.experience-brand span {display:block;font:14px var(--font-ui);letter-spacing:.16em;margin-top:8px}
.experience-nav {display:flex;align-items:center;gap:8px;padding:5px;border:1px solid var(--line);border-radius:999px}
.experience-nav > a {padding:10px 23px;border-radius:999px;display:flex;gap:7px;align-items:center;font-size:14px;font-weight:500;white-space:nowrap}
.experience-nav > a svg {display:none;width:17px;height:17px}
.experience-nav > a.active {background:var(--ink);color:var(--on-ink)}
.experience-nav > a:hover:not(.active) {background:var(--cream-deep)}
.experience-account {display:flex;gap:18px;align-items:center}
.account-circle {width:38px;height:38px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;font-size:14px}
.inbox-link {position:relative}.inbox-link svg {width:22px;height:22px}.inbox-link b {position:absolute;top:-8px;right:-8px;background:var(--text);color:var(--cream);border-radius:50%;font-size:14px;min-width:16px;text-align:center}
.experience-account .text-link {font-size:14px}
.topbar {position:relative;background:transparent;border:0;max-width:1440px;margin:auto;min-height:76px;padding:18px 48px;gap:18px}
.topbar .welcome-lg {font-size:24px}.topbar .welcome-sm {display:none}
html[data-route=dashboard] .topbar .welcome-lg,html[data-route=home] .topbar .welcome-lg {font-size:0}
.topbar .searchbox {margin-left:auto;max-width:330px}
.searchbox input {border:0!important;background:var(--cream-deep)!important;border-radius:999px!important;font-size:14px!important;box-shadow:none!important}
.bell-btn {background:transparent;box-shadow:none;border:1px solid var(--line);width:42px;height:42px;border-radius:50%}
.menu-btn,.mobile-bar,.nav-scrim,.checklist-fab {display:none!important}
.dash,.main {max-width:1440px;width:100%;margin:0 auto;padding:10px 48px 120px}
.main {padding-top:36px}
/* Arrival has an editorial headline beside an architectural frame. */
.arrival {display:grid;grid-template-columns:.85fr 1.4fr;gap:36px;align-items:stretch;margin:12px 0 48px;min-height:460px}
.arrival-copy {padding:32px 0 28px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.arrival-copy .eyebrow {margin-bottom:28px}
.arrival h1 {font-size:calc(clamp(46px,5.1vw,80px) * var(--heading-scale));line-height:.99;letter-spacing:-.055em;margin:0 0 25px}
.arrival h1 span {color:var(--text-muted)}
.arrival-copy p {font-size:14px;color:var(--text-muted);max-width:270px;margin-bottom:32px}
.arrival-action {display:flex;gap:30px;align-items:center;border-bottom:1px solid var(--text);padding:0 0 9px;font-size:14px;font-weight:500}
.arrival-action span {font-size:24px;line-height:1}
.arrival-image {position:relative;overflow:hidden;min-height:460px;border-radius:32px;background:var(--cream-deep)}
.scene-picture,.scene-picture img {display:block;width:100%;height:100%;object-fit:cover}
.arrival-image>.scene-picture {position:absolute;inset:0}
.scene-caption {position:absolute;bottom:16px;left:20px;right:20px;background:#20211fbd;backdrop-filter:blur(10px);border:1px solid #ffffff25;border-radius:999px;color:#fff;padding:10px 16px;display:flex;justify-content:space-between;font-size:14px;letter-spacing:.04em}
.day-intro {display:flex;justify-content:space-between;align-items:flex-end;margin:0 0 22px}
.day-intro h2 {font-size:calc(30px * var(--heading-scale));letter-spacing:-.045em}.day-intro h2 span {color:var(--text-muted)}
.day-intro p {font-size:14px;color:var(--text-muted)}
.day-grid {display:grid;grid-template-columns:1.2fr 1fr;gap:20px}
.day-card {padding:28px 30px;border-radius:26px;background:var(--card)}
.day-card h3 {font-size:calc(28px * var(--heading-scale));line-height:1.13;margin:26px 0}
.text-link {font-size:14px;text-decoration:none}.text-link:hover {text-decoration:underline;text-underline-offset:4px}
.day-task {display:flex;align-items:center;gap:14px;border-bottom:1px solid var(--line-soft);padding:14px 0;font-size:14px}
.day-task:last-child{border:0}.day-task span {flex:1}.day-task small{font-size:14px;color:var(--text-muted)}
.day-task .cbox {flex:none;width:24px;height:24px;border:1px solid var(--line);border-radius:50%;color:transparent}.day-task .cbox:hover{color:var(--text)}
.day-card-dark {background:var(--ink);color:var(--on-ink)}.day-card-dark h3,.day-card-dark .eyebrow {color:var(--on-ink)}
.day-card-dark p {font-size:14px;opacity:.75;max-width:270px}
.schedule-row {display:flex;align-items:center;gap:16px;padding:15px 0;border-bottom:1px solid color-mix(in srgb,var(--on-ink) 20%,transparent);font-size:14px}
.schedule-row strong {font-weight:400;min-width:55px}.schedule-row>span:nth-child(2){flex:1}.schedule-row small {display:block;opacity:.7;font-size:14px}
.message-summary {display:flex;justify-content:space-between;padding:18px 0 0;font-size:14px}
.people-moments {margin:44px 0}.sec-head {margin:0 0 20px}.sec-head h2 {font-size:calc(28px * var(--heading-scale))}
.moment-grid {display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.person-moment {padding:22px;border-radius:22px;border:1px solid var(--line);transition:background .2s}.person-moment:hover{background:var(--card)}
.moment-top {display:flex;justify-content:space-between;margin-bottom:28px}.moment-avatar {width:40px;height:40px;background:var(--cream-deep);border-radius:50%;display:grid;place-items:center;font-family:var(--font-display);font-size:21px}
.person-moment h3 {font-size:19px;margin-bottom:7px}.person-moment p {font-size:14px;color:var(--text-muted)}
.business-strip {border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:26px 0;display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.business-strip span {font-size:14px;color:var(--text-muted);display:block}.business-strip strong {font-family:var(--font-display);font-size:30px;font-weight:500;letter-spacing:-.04em}.business-strip>a {justify-self:end;align-self:center;font-size:14px}
.studio-intro {padding:35px 0 45px}.studio-intro h1 {margin:22px 0}.studio-intro h1 span {color:var(--text-muted)}.studio-intro p {color:var(--text-muted)}
.studio-grid {display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.studio-tile{display:block;border-radius:24px;border:1px solid var(--line);padding:28px;transition:background .2s}.studio-tile:hover{background:var(--card)}.studio-tile h2{margin:35px 0 12px}.studio-tile p{color:var(--text-muted);font-size:14px}
/* Client journey */
.client-brand {font-size:25px;max-width:320px;letter-spacing:-.045em}
.journey-links{display:flex;justify-content:space-between;padding:24px 0;margin:-20px 0 35px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);gap:16px;font-size:14px}
.journey-more {position:relative}.journey-more summary {cursor:pointer;list-style:none;padding:10px 20px;font-size:14px}.journey-more>div{position:absolute;right:0;top:48px;min-width:190px;background:var(--card);padding:10px;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow-lg)}.journey-more>div a,.journey-more>div button{display:block;padding:10px;font-size:14px;width:100%;text-align:left}
.home-photo {aspect-ratio:4/3;background:var(--cream-deep)!important;border-radius:24px 24px 0 0}.home-photo .ph {background:linear-gradient(145deg,var(--cream),var(--cream-deep));height:100%;display:grid;place-items:center}.home-photo .ph:after{content:'A home to discover';font-family:var(--font-display);font-size:22px;color:var(--text-muted)}.home-photo .ph svg{display:none}
.home-card{overflow:hidden}.home-body{padding:24px}.home-price{font-size:30px}.home-addr{font-size:16px}.home-city,.home-facts{color:var(--text-muted);font-size:14px}.home-actions{gap:10px}.react-btn{border-radius:999px;min-height:42px}.heart-btn{border-radius:50%;background:var(--card);color:var(--text);box-shadow:none}
.tiles {gap:18px;margin:28px 0}.tile{padding:24px}.tile-n{font-size:42px}.tile-sub{color:var(--text-muted)}
.stage-card,.next-card,.showing-card{margin:22px 0;padding:26px;border:1px solid var(--line);background:var(--card);border-radius:24px}
/* Detail and working screens retain their actions with quieter structure. */
.kcol {background:var(--cream-deep);border-radius:20px;padding:14px;min-width:230px}.kcard {background:var(--card);border:0;border-radius:16px;padding:18px;box-shadow:none}.kcol-head {padding:10px 6px 18px}
.thread,.thread-box,.message-thread {border-radius:24px;background:var(--card)}.bubble {border-radius:20px;background:var(--cream-deep);color:var(--text)}.msg.mine .bubble,.message.mine .bubble {background:var(--ink);color:var(--on-ink)}
.cal-card,.cal-layout {border-radius:24px;overflow:hidden}.cal-cell {border-color:var(--line-soft)}.cal-cell.today {background:var(--cream-deep)}.cal-cell.selected {outline-color:var(--text)}
/* The personal design panel is outside route content so editing never rerenders forms. */
.appearance-trigger{position:fixed;right:24px;bottom:22px;z-index:110;background:var(--ink);color:var(--on-ink);border:1px solid var(--line);border-radius:999px;padding:12px 18px;font-size:14px;box-shadow:var(--shadow);display:flex;gap:10px;align-items:center}.appearance-trigger>span:first-child{font-size:20px;line-height:1}
.appearance-panel {position:fixed;right:16px;top:16px;bottom:78px;width:360px;z-index:120;background:var(--card);color:var(--text);border:1px solid var(--line);border-radius:26px;box-shadow:var(--shadow-lg);padding:24px;overflow:auto;overscroll-behavior:contain}.appearance-panel[hidden]{display:none}
.appearance-head {display:flex;justify-content:space-between;gap:20px}.appearance-head h2{font-size:30px;margin:14px 0}.appearance-close{font-size:27px;width:36px;height:36px;flex:none;border:1px solid var(--line);border-radius:50%}.appearance-note{font-size:14px;color:var(--text-muted);margin-bottom:20px}
.preset-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
/* Her own looks carry a delete (0071). */
.preset-cell{position:relative;display:block}
.preset-cell .preset-option{width:100%}
.preset-del{position:absolute;top:-6px;right:-6px;width:22px;height:22px;border-radius:50%;border:1px solid var(--line);background:var(--card);color:var(--text-muted);font-size:15px;line-height:1;display:grid;place-items:center}
.preset-del:hover{background:var(--ink);color:var(--on-ink);border-color:var(--ink)}.preset-option{font-size:14px;border:1px solid var(--line);border-radius:14px;overflow:hidden;padding:5px 5px 8px;text-align:left}.preset-option.selected{outline:2px solid var(--text);outline-offset:1px}.preset-sample{display:flex;padding:10px;font-size:25px;border-radius:10px;justify-content:space-between;align-items:center;margin-bottom:5px}.preset-sample span{width:12px;height:12px;border-radius:50%}
.appearance-fields {display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:24px 0}.appearance-fields label{display:flex;flex-direction:column;gap:7px}.appearance-fields select{width:100%;font-size:14px;padding:8px;min-width:0}
.appearance-colors{border-top:1px solid var(--line);padding-top:18px}.color-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:14px 0}.color-row>span{text-transform:capitalize;font-size:14px}.color-row>div{display:flex;gap:5px}.color-swatch{width:23px;height:23px;border:1px solid var(--line);border-radius:50%}.color-swatch.selected{outline:2px solid var(--text);outline-offset:2px}
.appearance-scene{border-top:1px solid var(--line);padding-top:18px;margin:20px 0}.appearance-scene>div{display:flex;gap:7px;margin-top:12px}.appearance-scene .btn{font-size:14px;padding:8px 10px}
.appearance-panel [role=status]{font-size:14px;min-height:36px;margin:15px 0;color:var(--text-muted)}.appearance-footer{position:sticky;bottom:-24px;display:flex;justify-content:space-between;background:var(--card);border-top:1px solid var(--line);padding:16px 0}
/* Landing, intake, sign in, profile and admin share the same palette and fonts. */
html[data-surface=public] .hero {background:transparent;border:0;box-shadow:none;padding-top:60px;text-align:left}
html[data-surface=public] .hero-lockup{display:none}
.marketing-arrival {display:grid;grid-template-columns:1fr 1.2fr;gap:45px;align-items:center;margin:45px 0 80px}.marketing-arrival h1{font-size:clamp(54px,6.8vw,102px);letter-spacing:-.065em}.marketing-arrival h1 span{color:var(--text-muted)}.marketing-arrival p{margin:25px 0;max-width:390px;font-size:15px;color:var(--text-muted)}.marketing-image{height:560px;border-radius:32px;overflow:hidden}.marketing-image img{width:100%;height:100%;object-fit:cover}
html[data-surface=public] .nav-brand span{font-family:var(--font-display);letter-spacing:-.05em;text-transform:lowercase;font-size:30px}html[data-surface=public] .nav-brand img{display:none}html[data-surface=public] .top{background:var(--cream);border-color:var(--line)}
html[data-surface=public] .nav-cta {background:var(--ink);color:var(--on-ink)}html[data-surface=public] section h2{font-family:var(--font-display);font-style:normal;letter-spacing:-.04em}
html[data-surface=auth] body {background:var(--cream)}html[data-surface=auth] .quiz-page{min-height:100vh;background:linear-gradient(90deg,transparent 50%,var(--cream) 50%),url('/assets/scenes/scene-01.webp') left center/55% 100% no-repeat;display:flex;justify-content:flex-end;padding:60px 8%}
html[data-surface=auth] .quiz-card{width:100%;max-width:460px!important;background:var(--cream);box-shadow:none;border:0;padding:35px}
.quiz-card,.q-card {background:var(--card);border-color:var(--line);border-radius:28px}.quiz-brand .brand-name{font:600 38px var(--font-display);letter-spacing:-.055em}.quiz-brand .brand-sub{color:var(--text-muted);letter-spacing:.12em}
.q-title{font-family:var(--font-display);font-style:normal;letter-spacing:-.045em}.q-sub{color:var(--text-muted)}.q-choice{background:var(--card);border-color:var(--line);border-radius:18px}.q-choice:hover{border-color:var(--text)}.q-fill{background:var(--ink)}
.bio-head{background:var(--card);border-radius:28px;padding:40px}.bio-head h1{font-family:var(--font-display);font-style:normal}.bio-home{background:var(--card);border-radius:24px;overflow:hidden}.bio-photo{background:var(--cream-deep)}
@media(min-width:1150px){body.appearance-open .shell{margin-right:380px}.appearance-open .arrival{grid-template-columns:1fr 1fr;gap:24px}.appearance-open .arrival h1{font-size:50px}.appearance-open .experience-account .text-link{display:none}.appearance-open .experience-nav>a{padding:10px 14px}.appearance-open .experience-brand{font-size:28px}.appearance-open .dash,.appearance-open .main,.appearance-open .topbar{padding-left:28px;padding-right:28px}}
@media(max-width:1000px){.shell .nav{gap:16px;padding:0 26px}.experience-nav>a{padding:10px 16px}.experience-brand{font-size:30px}.experience-account .text-link{display:none}.dash,.main{padding-left:26px;padding-right:26px}.topbar{padding-left:26px;padding-right:26px}.arrival{gap:24px;min-height:390px}.arrival-image{min-height:390px}.arrival h1{font-size:calc(55px * var(--heading-scale))}.day-card{padding:24px}.moment-grid{grid-template-columns:repeat(2,1fr)}.client-brand{font-size:20px;max-width:230px}.studio-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){
 .shell .nav{height:80px;padding:0 20px;gap:10px}.experience-brand{font-size:30px}.experience-brand span{font-size:14px}.experience-account{gap:15px}.client-brand{font-size:22px}
 .experience-nav{position:fixed;bottom:calc(12px + env(safe-area-inset-bottom));left:12px;right:12px;z-index:100;background:var(--card);box-shadow:var(--shadow-lg);padding:6px;justify-content:space-around;gap:0}.experience-nav>a{flex:1;justify-content:center;flex-direction:column;gap:3px;font-size:14px;padding:8px 10px;border-radius:30px}.experience-nav>a svg{display:block}.experience-nav .journey-more{flex:1;text-align:center}.journey-more>div{top:auto;bottom:64px}.journey-more summary{font-size:14px}
 .topbar{padding:12px 20px;gap:10px;min-height:62px;flex-wrap:nowrap}.topbar>div:first-child{display:none}.topbar .searchbox{max-width:none;flex:1;width:auto;margin:0}.topbar .searchbox input{width:100%;padding-right:8px}.topbar .btn{min-width:42px}.dash,.main{padding:12px 20px 150px;max-width:100%;overflow:hidden}.main{padding-top:24px}
 .arrival{grid-template-columns:1fr;gap:20px;margin:0 0 32px;min-height:0}.arrival-copy{padding:14px 0 0}.arrival-copy .eyebrow{margin-bottom:20px}.arrival h1{font-size:calc(clamp(45px,11.5vw,66px) * var(--heading-scale));margin-bottom:18px}.arrival-copy p{max-width:300px;margin-bottom:20px;font-size:14px}.arrival-action{font-size:14px;padding-bottom:6px;gap:25px}.arrival-image{min-height:300px;border-radius:25px}.scene-caption{font-size:14px;left:12px;right:12px;bottom:12px}
 .day-intro{align-items:flex-start;gap:15px}.day-intro h2{font-size:26px}.day-intro p{display:none}.day-grid{grid-template-columns:1fr;gap:16px}.day-card{padding:24px}.day-card h3{font-size:25px}.day-task{font-size:14px}.day-task small{max-width:45px}.people-moments{margin:32px 0}.sec-head h2{font-size:25px}.moment-grid{gap:12px}.person-moment{padding:17px}.person-moment h3{font-size:17px}.person-moment p{font-size:14px}.business-strip{grid-template-columns:1fr 1fr;gap:22px}.business-strip>a{justify-self:start}.business-strip strong{font-size:27px}
 .studio-intro{padding:20px 0 30px}.studio-intro h1{font-size:47px}.studio-grid{grid-template-columns:1fr}.studio-tile{padding:24px}.studio-tile h2{margin-top:20px}.journey-links{flex-direction:column;gap:15px;margin-top:0}.homes-grid{grid-template-columns:1fr}.tiles{grid-template-columns:repeat(2,1fr)}
 .appearance-trigger{bottom:calc(98px + env(safe-area-inset-bottom));right:16px;padding:10px 12px;font-size:14px}.appearance-panel{inset:10px 10px calc(92px + env(safe-area-inset-bottom));width:auto;border-radius:24px;padding:22px}.appearance-panel h2{font-size:28px}.appearance-open .appearance-trigger{display:none}
 .marketing-arrival{grid-template-columns:1fr;gap:25px;margin:20px 0 45px}.marketing-arrival h1{font-size:62px}.marketing-image{height:350px}.marketing-arrival p{font-size:14px}html[data-surface=public] .hero{padding-top:20px}
 html[data-surface=auth] .quiz-page{background:var(--cream);padding:25px 18px;justify-content:center;align-items:center}html[data-surface=auth] .quiz-card{padding:25px 12px}.tbl{font-size:14px}.tbl th,.tbl td{padding:12px}.is-embed .experience-nav{position:relative;inset:auto}.is-embed .appearance-trigger{display:none}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
.searchbox{border:0!important;box-shadow:none!important;background:transparent!important}
[data-surface=agent] .topbar{margin-bottom:0}
.day-card .cbox:hover{background:var(--cream-deep)}
/* One header: navigation and working actions share the same horizontal space. */
[data-surface=agent] .shell .nav{display:grid;grid-template-columns:auto 1fr auto auto;height:96px;gap:24px;padding:0 36px}
[data-surface=agent] .experience-brand{font-size:32px}
[data-surface=agent] .experience-nav{justify-self:center}
[data-surface=agent] .experience-account{grid-column:4;grid-row:1;gap:16px}
[data-surface=agent] .experience-account .text-link{display:none}
[data-surface=agent] .nav .topbar{grid-column:3;grid-row:1;display:flex;gap:10px;padding:0;margin:0;min-height:0;max-width:none;position:relative}
[data-surface=agent] .nav .topbar>div:first-child{display:none}
[data-surface=agent] .topbar .searchbox{width:42px;flex:none;max-width:none;position:relative;height:42px;margin:0}
[data-surface=agent] .topbar .searchbox input{width:42px;min-height:42px;height:42px;padding:0 20px;background:transparent!important;border:1px solid var(--line)!important;cursor:pointer;color:transparent;position:absolute;right:0;top:0;z-index:2}
[data-surface=agent] .topbar .searchbox input::placeholder{color:transparent}
[data-surface=agent] .topbar .searchbox svg{z-index:3;pointer-events:none;left:13px;top:13px;width:16px;height:16px}
[data-surface=agent] .topbar .searchbox:focus-within input{width:320px;padding:0 42px 0 18px;background:var(--card)!important;color:var(--text);cursor:text;box-shadow:var(--shadow)!important}
[data-surface=agent] .topbar .searchbox:focus-within input::placeholder{color:var(--text-muted)}
[data-surface=agent] #results{left:auto;right:0;min-width:320px;top:50px}
[data-surface=agent] .dash{padding-top:34px}
@media(min-width:1150px){[data-surface=agent] .appearance-open .shell .nav{gap:12px;padding:0 24px}[data-surface=agent] .appearance-open .experience-brand{font-size:27px}[data-surface=agent] .appearance-open .experience-brand span{display:none}[data-surface=agent] .appearance-open .experience-nav>a{padding:10px 12px}[data-surface=agent] .appearance-open .experience-account{gap:10px}[data-surface=agent] .appearance-open .topbar{gap:5px}}
@media(max-width:1100px) and (min-width:701px){[data-surface=agent] .shell .nav{gap:16px;padding:0 24px}[data-surface=agent] .experience-nav>a{padding:10px 13px}[data-surface=agent] .experience-brand span{display:none}[data-surface=agent] .experience-account{gap:10px}}
@media(max-width:700px){[data-surface=agent] .shell .nav{display:flex;gap:12px;height:80px;padding:0 20px}[data-surface=agent] .experience-brand{font-size:28px;flex:1}[data-surface=agent] .experience-brand span{display:none}[data-surface=agent] .experience-account{display:none}[data-surface=agent] .nav .topbar{gap:8px;flex:none}[data-surface=agent] .topbar .searchbox:focus-within input,[data-surface=agent] #results{width:calc(100vw - 155px);min-width:0}[data-surface=agent] .dash{padding-top:22px}}
#results{border:0!important;box-shadow:none!important;background:transparent!important;position:absolute;right:0;top:50px;z-index:80}
#results:empty{display:none}
#results .search-results{position:relative;top:0;min-width:300px}
@media(max-width:700px){#results .search-results{min-width:250px}#results{right:-100px!important}}
.arrival-focus{display:flex;gap:22px;margin-top:26px;font-size:14px;color:var(--text-muted)}.arrival-focus strong{color:var(--text);font-weight:600;margin-right:4px}.arrival-focus a:hover{text-decoration:underline}.studio-foot{padding:28px 0;border-top:1px solid var(--line);margin-top:30px}
@media(max-width:700px){[data-surface=agent] .experience-account{display:flex;order:4}[data-surface=agent] .experience-account .account-circle,[data-surface=agent] .experience-account .text-link{display:none}[data-surface=agent] .shell .nav{gap:12px}[data-surface=agent] .experience-brand{font-size:25px}[data-surface=agent] .topbar .searchbox:focus-within input{width:calc(100vw - 178px)}.arrival-focus{margin-top:18px}}
.workspace-title{margin:6px 0 30px}.workspace-title .eyebrow{display:block;margin-bottom:15px}.workspace-title h1{font-size:calc(clamp(35px,4vw,54px) * var(--heading-scale));line-height:1.1}.workspace-title+.tabs{margin-bottom:26px}
@media(max-width:700px){.workspace-title{margin:2px 0 24px}.workspace-title h1{font-size:calc(36px * var(--heading-scale))}.workspace-title .eyebrow{font-size:14px}}

/* ★ Fields are visible blocks (Tovah, 2026-09-21: "the blocks around the forms
   don't show. Making it a bunch of words"). Two causes: a field's fill was the
   card's exact color, and layout.css gives .fld a TRANSPARENT border, which beat
   the textarea rule above (inputs escaped only because their selector is
   heavier). --field is now tinted off the card (appearance.js) and every field
   kind gets a real edge. */
textarea.fld, input.fld, select.fld { background-color: var(--field); border-color: var(--line); }
textarea.fld { min-height: 88px; padding: 12px 14px; }
:is(input, textarea, select).fld:focus, textarea:focus {
  background-color: var(--card); border-color: var(--text); outline: none;
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--text) 10%, transparent);
}
.kv-k { color: var(--text-muted); font-weight: 600; }

/* The "Homies updated" bar (version.js). It sits above everything, hugs the
   bottom on a phone, and never covers the page — somebody mid-sentence can
   finish. Colours come from the look, like everything else. */
#version-bar {
  position: fixed; left: 50%; transform: translateX(-50%);
  bottom: max(16px, env(safe-area-inset-bottom));
  z-index: 9999; display: flex; align-items: center; gap: 12px;
  padding: 12px 14px 12px 18px; border-radius: 999px;
  background: var(--ink); color: var(--on-ink, #fff);
  box-shadow: 0 10px 30px rgb(0 0 0 / 0.25);
  font-size: 15px; max-width: calc(100vw - 32px);
}
#version-bar button {
  border: 0; cursor: pointer; border-radius: 999px;
  padding: 8px 16px; font: inherit; font-weight: 600;
  background: var(--accent); color: var(--on-accent, #fff);
}

/* ⚠️ 2026-10-24: a document COMING from escrow or the lender is shown to the client but is not
   theirs to act on (0251 Begin file + `from_party`, in the library since 0006 and read by nothing
   until then). No button, no hover: a row that looks tappable reads as a job. */
.pt-doc.is-waiting { display: flex; align-items: center; gap: 10px; width: 100%; text-align: left;
  padding: 10px 0; border: 0; background: none; cursor: default; }
.pt-doc.is-waiting .pt-todo-main b { font-weight: 600; }
