:root{--cream:#f6f1e6;--cream-2:#f0e9da;--green:#2c5a43;--green-dark:#234a37;--pink:#d98a9e;--gold:#e2b86a;--card:#fff;--border:#e6dfcd;--border-strong:#c9c6b3;--text:#3b403c;--muted:#80857f;--serif:"Lora", Georgia, serif;--sans:"Work Sans", system-ui, -apple-system, sans-serif}*,:before,:after{box-sizing:border-box}body{background:var(--cream);color:var(--text);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.4}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}h1,h2,h3{font-family:var(--serif);color:var(--green);margin:0;font-weight:600}.muted{color:var(--muted)}.brand{font-family:var(--serif);color:var(--green);align-items:center;gap:14px;font-size:20px;font-weight:700;display:inline-flex}.brand__tag{font-family:var(--sans);letter-spacing:.16em;text-transform:uppercase;font-size:11px;font-weight:700}.brand--light{color:#fff}.brand--light .brand__tag{color:#ffffffbf}.topbar,.staffbar{justify-content:space-between;align-items:center;gap:16px;padding:0 48px;display:flex}.topbar{border-bottom:1px solid var(--border);height:76px}.staffbar{background:var(--green);color:#fff;height:68px;font-size:15px}.topbar__right{align-items:center;gap:18px;display:flex}.topbar__company{color:var(--muted);font-size:15px}.avatar{background:var(--cream-2);border:1px solid var(--border);width:36px;height:36px;color:var(--green);border-radius:50%;place-items:center;font-size:12px;font-weight:700;display:grid}.staffbar .avatar{color:#fff;background:#ffffff29;border:0}.signout{color:var(--green);cursor:pointer;background:0 0;border:0;padding:0;font-size:15px}.staffbar .signout{color:#fff}.tabs{border-bottom:1px solid var(--border);gap:8px;padding:12px 48px;display:flex;overflow-x:auto}.tab{white-space:nowrap;border-radius:999px;padding:8px 17px;font-size:14px;font-weight:500}.tab:hover{background:var(--cream-2)}.tab.active{background:var(--green);color:#fff}.page{max-width:1072px;margin:0 auto;padding:48px 24px 80px}.page--narrow{max-width:952px}.page-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:36px;display:flex}.page-title{font-size:32px}.page-title--lg{font-size:34px}.page-sub{color:var(--muted);margin:8px 0 0;font-size:15px}.page-sub--spaced{margin-bottom:36px}.page-kicker{color:var(--muted);margin:0 0 4px;font-size:13px}.eyebrow{color:var(--green);letter-spacing:.16em;text-transform:uppercase;margin:0 0 10px;font-size:12px;font-weight:700}.eyebrow--pink{color:var(--pink)}.back{color:var(--green);align-items:center;gap:8px;margin-bottom:24px;font-size:14px;display:inline-flex}.hero{margin-bottom:40px;font-size:44px;line-height:1.15}.hero em{color:var(--pink);font-weight:500}.section-title{margin-bottom:24px;font-size:21px}.card{background:var(--card);border:1px solid var(--border);border-radius:16px}.card-title{margin-bottom:20px;font-size:19px}.info-grid{grid-template-columns:repeat(4,1fr);align-items:center;gap:24px;margin-bottom:36px;padding:24px 28px;display:grid}.info-label{color:var(--muted);margin-bottom:6px;font-size:13px}.info-value{font-size:15px}.info-value--serif{font-family:var(--serif);color:var(--green);font-size:21px;font-weight:600}.quick-grid{grid-template-columns:repeat(4,1fr);gap:20px;margin-bottom:52px;display:grid}.quick{padding:24px;transition:border-color .15s,transform .15s;display:block}.quick:hover{border-color:var(--border-strong);transform:translateY(-1px)}.quick svg{color:var(--green);margin-bottom:20px}.quick__title{font-size:15px;font-weight:600}.quick__meta{color:var(--muted);margin-top:2px;font-size:13px}.pill{white-space:nowrap;border-radius:999px;padding:5px 16px;font-size:13px;font-weight:500;display:inline-block}.pill--not-started{background:var(--cream-2);color:var(--muted)}.pill--in-progress{color:#7a5714;background:#f3e2bf}.pill--needs-client-input{color:#2e4a61;background:#dce6ef}.pill--in-review{color:#8a8a80;background:#eee8da}.pill--completed{color:var(--green);background:#daebdf}.chips{flex-wrap:wrap;gap:10px;margin-bottom:24px;display:flex}.chip{border:1px solid var(--border-strong);cursor:pointer;background:0 0;border-radius:999px;padding:6px 14px;font-size:14px}.chip:hover{background:var(--cream-2)}.chip.active{background:var(--green);border-color:var(--green);color:#fff}.tag{border:1px solid var(--border-strong);border-radius:999px;padding:6px 16px;font-size:13px;font-weight:600;display:inline-block}.btn{white-space:nowrap;cursor:pointer;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:9px 20px;font-size:14px;font-weight:500;transition:background .15s;display:inline-flex}.btn:disabled{opacity:.55;cursor:not-allowed}.btn--primary{background:var(--green);color:#fff}.btn--primary:hover:not(:disabled){background:var(--green-dark)}.btn--outline{border-color:var(--border-strong);background:#fff}.btn--outline:hover{background:var(--cream)}.btn--block{width:100%;padding:14px;font-size:16px}.btn--lg{padding:12px 24px;font-size:16px}.icon-btn{border:1px solid var(--border-strong);width:34px;height:34px;color:var(--green);cursor:pointer;background:0 0;border-radius:50%;place-items:center;display:grid}.icon-btn:hover{background:var(--cream-2)}.table-wrap{overflow-x:auto}.table{border-collapse:collapse;width:100%}.table th{border-bottom:1px solid var(--border);color:var(--muted);letter-spacing:.08em;text-align:left;text-transform:uppercase;padding:12px 14px;font-size:12px;font-weight:600}.table td{border-bottom:1px solid var(--border);white-space:nowrap;padding:16px 14px;font-size:15px}.table .cell-action{text-align:right}.table .empty{text-align:center;padding:32px 14px}.doc-name{align-items:center;gap:12px;display:inline-flex}.doc-name svg{color:var(--green)}.link-strong{color:var(--green);font-weight:600}.link-strong:hover,.open-link:hover,.text-link:hover{text-decoration:underline}.open-link{color:var(--green);font-size:14px;font-weight:700}.timeline{margin:0;padding:0;list-style:none}.timeline__item{padding:0 0 28px 26px;position:relative}.timeline__item:before{content:"";background:var(--border-strong);width:1px;position:absolute;top:12px;bottom:-6px;left:4px}.timeline__item:last-child:before{display:none}.timeline__dot{background:var(--green);border-radius:50%;width:9px;height:9px;position:absolute;top:3px;left:0}.timeline__item--system .timeline__dot{background:#b5c2a8}.timeline__date{color:var(--muted);font-size:12px}.timeline__title{margin:6px 0 2px;font-size:16px;font-weight:600}.timeline__note{color:var(--muted);margin:0;font-size:14px}.stepper-card{margin-bottom:44px;padding:28px 28px 32px}.stepper{grid-template-columns:repeat(5,1fr);margin-top:28px;display:grid;position:relative}.stepper__track,.stepper__fill{height:2px;position:absolute;top:17px;left:0}.stepper__track{background:#e3dcc4;right:0}.stepper__fill{background:var(--green)}.step{flex-direction:column;align-items:center;gap:12px;display:flex;position:relative}.step__circle{background:var(--cream-2);width:36px;height:36px;color:var(--muted);border:2px solid #cfcdb5;border-radius:50%;place-items:center;font-size:13px;font-weight:600;display:grid}.step--done .step__circle{background:var(--green);border-color:var(--green);color:#fff}.step--current .step__circle{border-color:var(--green);color:var(--green);background:#fff}.step__label{color:var(--muted);font-size:14px}.step--done .step__label,.step--current .step__label{color:var(--green);font-weight:600}.convo{grid-template-columns:320px 1fr;min-height:calc(100vh - 137px);display:grid}.convo__list{border-right:1px solid var(--border);padding:28px 24px}.convo__list h1{margin-bottom:20px;font-size:21px}.convo-item{border-radius:12px;margin-bottom:8px;padding:12px 18px;display:block}.convo-item:hover,.convo-item.active{background:var(--cream-2)}.convo-item__top{justify-content:space-between;align-items:center;gap:8px;font-size:15px;font-weight:600;display:flex}.unread-dot{background:var(--pink);border-radius:50%;flex:none;width:8px;height:8px}.convo-item__preview{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin:4px 0;font-size:14px;overflow:hidden}.convo-item__date{color:var(--muted);font-size:12px}.thread{padding:32px 40px}.thread h2{font-size:21px}.thread__people{color:var(--muted);margin:4px 0 20px;font-size:14px}.notice{background:var(--cream-2);border-radius:12px;margin-bottom:20px;padding:14px 18px;font-size:13px}.msg{flex-direction:column;align-items:flex-start;margin-bottom:20px;display:flex}.msg--mine{align-items:flex-end}.bubble{border:1px solid var(--border);background:#fff;border-radius:16px;max-width:70%;padding:14px 18px;font-size:15px;line-height:1.55}.msg--mine .bubble{background:var(--green);border-color:var(--green);color:#fff}.msg__meta{color:var(--muted);margin-top:6px;font-size:12px}.meeting{align-items:center;gap:40px;margin-bottom:44px;padding:28px 28px 28px 40px;display:flex}.meeting__date{text-align:center;min-width:64px}.meeting__month{color:var(--muted);letter-spacing:.08em;font-size:13px}.meeting__day{font-family:var(--serif);color:var(--green);font-size:42px;font-weight:700;line-height:1}.meeting__body{flex:1}.meeting__title{font-size:16px;font-weight:600}.meeting__meta,.past-item__meta{color:var(--muted);margin-top:4px;font-size:14px}.meeting__actions{gap:10px;display:flex}.past-list{margin:0;padding:0;list-style:none}.past-item{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:16px;padding:16px 0;display:flex}.past-item:first-child{padding-top:0}.past-item:last-child{border-bottom:0}.past-item__title{font-size:16px;font-weight:500}.field{margin-bottom:18px;display:block}.field--last{margin-bottom:24px}.field__label{margin-bottom:8px;font-size:13px;font-weight:600;display:block}.field__hint{color:var(--muted);font-weight:400}.input,.select,.textarea{border:1px solid var(--border-strong);background:#fff;border-radius:10px;width:100%;padding:12px 14px;font-size:15px}.select,.textarea{background:var(--cream);border-radius:12px;padding:12px 18px}.textarea{resize:vertical;min-height:104px;line-height:1.6}.input:focus,.select:focus,.textarea:focus{border-color:var(--green);outline:2px solid #2c5a4333}.form-card{margin-bottom:44px;padding:28px}.form-actions{justify-content:flex-end;margin-top:4px;display:flex}.auth{flex-direction:column;min-height:100vh;display:flex}.auth--staff{background:var(--green)}.auth__bar{justify-content:space-between;align-items:center;padding:20px 48px;display:flex}.auth__help,.text-link{color:var(--green);font-size:14px}.auth__main{flex:1;place-items:center;padding:24px 16px;display:grid}.auth-card{border-radius:20px;width:100%;max-width:420px;padding:48px}.auth--staff .auth-card{border:0}.auth-card h1{font-size:30px}.auth-card h1 em{color:var(--pink)}.lede{color:var(--muted);margin:10px 0 32px;font-size:15px;line-height:1.5}.auth-row{justify-content:space-between;align-items:center;margin:-2px 0 22px;font-size:14px;display:flex}.check{align-items:center;gap:8px;display:inline-flex}.check input{accent-color:var(--green)}.auth-foot{color:var(--muted);text-align:center;margin:28px 0 0;font-size:13px;line-height:1.6}.flowers{justify-content:center;gap:24px;padding:16px 0 24px;display:flex}@media (width<=860px){.topbar,.staffbar,.auth__bar{padding:0 16px}.auth__bar{padding:16px}.tabs{padding:10px 16px}.topbar__company{display:none}.page{padding:32px 16px 64px}.hero{font-size:32px}.info-grid,.quick-grid{grid-template-columns:repeat(2,1fr)}.page-head,.meeting{flex-wrap:wrap}.meeting{gap:20px;padding:24px}.convo{grid-template-columns:1fr;min-height:0}.convo__list{border-right:0;border-bottom:1px solid var(--border);padding:24px 16px}.thread{padding:24px 16px}.bubble{max-width:88%}.step__label{font-size:12px}.auth-card{padding:32px 24px}}@media (width<=480px){.info-grid,.quick-grid{grid-template-columns:1fr}.topbar__right{gap:12px}.brand{font-size:18px}}.page-state{max-width:1100px;margin:0 auto;padding:40px 24px}.form-error{color:#a3364f;background:#fbeef1;border:1px solid #f0cdd6;border-radius:8px;margin:0 0 16px;padding:10px 12px;font-size:14px}.field-row{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:0 16px;display:grid}.client-access{margin-top:40px}.invite-link{flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;display:flex}.invite-link .input{flex:260px;min-width:0;font-size:13px}
