:root{--olive:#485a3e;--green:#5f7350;--bg:#f7f5f0;--beige:#eceae3;--ink:#232622;--muted:#63675e;--border:#d8d6cd;--white:#fffefa;font-family:Inter,"Segoe UI",system-ui,sans-serif;color:var(--ink);background:var(--bg);line-height:1.55;font-size:14px}*{box-sizing:border-box}body{margin:0}a{color:var(--olive);text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{font:inherit}button,.button{display:inline-flex;align-items:center;justify-content:center;background:var(--olive);color:#fff;border:1px solid var(--olive);border-radius:8px;padding:11px 17px;cursor:pointer;font-size:13px;font-weight:600;text-decoration:none;transition:background .15s,transform .15s}button:hover,.button:hover{background:#3b4b33;text-decoration:none}button:disabled{opacity:.55;cursor:wait}.secondary{color:var(--olive);background:transparent;border-color:var(--border)}.secondary:hover{background:var(--beige)}.compact{padding:7px 11px;white-space:nowrap}.text-button{padding:0;background:none;border:0;color:var(--muted);font-weight:400}.text-button:hover{background:none;color:var(--olive)}input,select,textarea{display:block;width:100%;padding:10px 12px;background:#fff;border:1px solid var(--border);color:var(--ink);border-radius:6px;min-height:43px}select[multiple]{min-height:100px}input[type=checkbox]{width:18px;min-height:18px;display:inline-block}textarea{resize:vertical}label{display:block;font-size:12px;font-weight:600;color:var(--muted);margin:10px 0 5px}label input,label select{margin-top:6px}input:focus,select:focus,textarea:focus,a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid #98aa89;outline-offset:3px}h1,h2,h3,p{margin-top:0}h1{font-family:Georgia,"Times New Roman",serif;font-weight:400;letter-spacing:-1.2px;font-size:clamp(30px,3vw,42px);line-height:1.2;margin-bottom:12px}h2{font-size:17px;font-weight:600;letter-spacing:-.3px;margin-bottom:17px}h3{font-size:15px;font-weight:600}p{overflow-wrap:anywhere}small,.small{font-size:12px;color:var(--muted)}small{display:block}.muted{color:var(--muted)}.eyebrow{font-size:10px;letter-spacing:1.8px;font-weight:650;color:var(--green);text-transform:uppercase;margin-bottom:12px}.brand{display:block;font-family:Georgia,serif;font-size:42px;font-weight:400;letter-spacing:-2px;line-height:1.1}.brand:hover{text-decoration:none}.brand span{display:block;font-family:Inter,"Segoe UI",sans-serif;font-size:8px;font-weight:600;letter-spacing:3px;margin-top:10px;margin-left:4px}.sidebar{position:fixed;left:0;top:0;bottom:0;width:224px;border-right:1px solid var(--border);padding:34px 22px;background:#f0eee7;display:flex;flex-direction:column;z-index:20}.sidebar .brand{margin-left:10px}.nav-caption{font-size:9px;letter-spacing:1.7px;color:#7b8074;margin:50px 10px 16px}.sidebar nav{display:grid;gap:5px}.sidebar nav a{display:flex;align-items:center;gap:12px;padding:12px;border-radius:7px;color:var(--muted);font-size:13px}.sidebar nav a:hover{background:#e8e7de;text-decoration:none}.sidebar nav a.active{background:#e1e5d9;color:var(--olive);font-weight:650}.sidebar nav img{width:18px;height:18px;opacity:.7}.sidebar-bottom{margin-top:auto;border-top:1px solid var(--border);padding:22px 10px 0;display:grid;gap:6px;font-size:12px}.sidebar-bottom .avatar{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:#dfe4d5;color:var(--olive);margin-bottom:6px}.sidebar-bottom strong{overflow-wrap:anywhere}.sidebar-bottom form{margin-top:8px}.main-shell{min-width:0}.workspace .main-shell{margin-left:224px}.topbar{min-height:64px;padding:18px 36px;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;gap:16px;font-size:11px;background:#faf9f5}.topbar .muted{margin-left:10px}main{max-width:1450px;margin:0 auto;padding:36px;min-height:80vh}.public header{padding:28px 7%;border-bottom:1px solid var(--border)}.public main{max-width:1150px}.heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:28px}.heading p:last-child{margin-bottom:0}.heading h1{margin-top:0}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.section-heading h2{margin-bottom:0}.section-heading .eyebrow{margin-bottom:7px}.section-heading>a{font-size:12px;white-space:nowrap}article,.panel{background:var(--white);border:1px solid var(--border);border-radius:11px;padding:24px;margin-bottom:24px}article article{margin-bottom:0}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px;margin:24px 0}.stats article{margin:0;padding:22px}.stats small{font-size:11px;min-height:34px}.stats strong{display:block;font-family:Georgia,serif;font-size:39px;font-weight:400;line-height:1.25;margin:7px 0 17px}.stats a{font-size:10px;color:var(--green)}.dashboard-columns{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(270px,1fr);gap:24px}.detail-columns{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,1fr);gap:24px}.detail-columns>section{min-width:0}.list-row{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:17px 0;border-bottom:1px solid #e8e6df}.list-row:last-child{border-bottom:0}.list-row p{margin:8px 0 0}.list-row>div:first-child{min-width:0}.row-title{display:block;color:var(--ink);font-weight:550;margin:6px 0}.linked{color:inherit}.linked:hover{background:#f7f7ef;text-decoration:none}.badge{display:inline-block;font-size:10px;line-height:1.4;padding:5px 9px;border-radius:20px;background:#edf0e6;color:#566548;white-space:nowrap}.badge.overdue,.late{color:#995547;background:#f7eae3}.badge.warning{background:#f4eedb;color:#8a743d}.empty{padding:42px 15px;text-align:center;max-width:420px;margin:auto}.empty-mark{display:grid;place-items:center;width:40px;height:40px;border:1px solid #d6ddcd;color:var(--green);border-radius:50%;margin:0 auto 16px}.empty h3{font-family:Georgia,serif;font-size:23px;font-weight:400;color:var(--olive)}.empty p{color:var(--muted);font-size:12px}.empty a{font-size:12px}.travel-panel{background:#eeefe6}.trip-mini{display:block;padding:20px 0;border-bottom:1px solid var(--border);color:var(--ink)}.trip-mini:last-child{border:0}.trip-mini h3{font:25px Georgia,serif;margin:10px 0}.trip-mini p{margin-bottom:10px}.countdown{float:right;font:28px Georgia,serif;color:var(--olive)}.countdown small{font:10px Inter,system-ui,sans-serif}.filters{display:flex;align-items:flex-end;flex-wrap:wrap;gap:12px;margin:20px 0}.filters label{min-width:130px;margin:0;flex:0 1 auto}.filters .grow{flex:1;min-width:180px}.filters button{min-height:43px}.tabs{display:flex;gap:6px;border-bottom:1px solid var(--border);margin:22px 0}.tabs a,.tabs button{background:none;border:0;border-radius:0;color:var(--muted);padding:12px 16px;font-size:12px;white-space:nowrap}.tabs .active{color:var(--olive);border-bottom:2px solid var(--olive);font-weight:650}.tabs a:hover,.tabs button:hover{background:var(--beige);text-decoration:none}.table{padding:0;overflow:auto}table{width:100%;border-collapse:collapse;text-align:left}th{background:#f0f0e8;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:1px;font-weight:600}th,td{padding:17px 20px;border-bottom:1px solid #e8e6df}td{font-size:12px}td a{font-weight:600}td small{margin-top:5px;font-size:11px}tr:last-child td{border:0}.pagination{display:flex;justify-content:center;gap:18px;font-size:12px}.editor{max-width:900px;margin:20px auto}.narrow{max-width:650px;margin:30px auto}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 24px;margin-bottom:24px}.field{min-width:0}.field:has(textarea){grid-column:1/-1}.field.checkbox{align-self:center}.errorlist{color:#9b463b;padding-left:18px;font-size:12px}.actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:18px}.list-row .actions{margin:0}.actions form{margin:0}.back{display:inline-block;margin-bottom:20px;font-size:12px;color:var(--muted)}dt{color:var(--muted);font-size:11px;margin-top:18px}dd{margin:5px 0 0;overflow-wrap:anywhere}dd p{margin:8px 0}.notice{padding:14px 18px;border:1px solid #c9d6be;border-radius:7px;background:#edf2e8;margin-bottom:20px}.notice.error{border-color:#ddc1b7;background:#faeee8}.quick{position:relative}.quick summary{list-style:none}.quick>div{position:absolute;right:0;top:49px;background:var(--white);border:1px solid var(--border);border-radius:8px;padding:8px;min-width:180px;z-index:15;box-shadow:0 6px 16px #2326220a}.quick a{display:block;padding:10px}.quick a:hover{background:var(--beige)}.kanban{display:flex;gap:15px;overflow:auto;align-items:stretch;padding:5px 0 20px;min-height:420px}.kanban-column{background:#eeede6;border:1px solid #e3e1d8;border-radius:9px;min-width:236px;flex:1;padding:14px}.kanban-column h2{font-size:12px;font-weight:600}.kanban-drop{min-height:280px}.kanban-column.drag-over{outline:2px dashed var(--green)}.deal-card{background:#fffefa;padding:17px;margin:0 0 12px;border-radius:8px;cursor:grab}.deal-card.dragging{opacity:.4}.deal-card strong{font-size:13px;color:var(--ink)}.deal-card p{font-size:11px;color:var(--muted);margin:8px 0 15px}.card-link{display:block;color:var(--ink)}.card-link:hover{text-decoration:none}.money{font-size:13px;font-weight:550}.card-next{margin:16px 0 10px;padding-top:12px;border-top:1px solid #eeede6;font-size:11px;color:var(--muted)}.card-next small{font-size:10px;margin-top:5px}.column-empty{padding:25px 8px;color:#8b8e82;font-size:11px}.week-grid{display:grid;grid-template-columns:repeat(7,minmax(130px,1fr));gap:10px;overflow:auto}.week-grid article{padding:15px;min-height:230px}.calendar-event{display:block;background:#e8eddf;color:var(--olive);border-radius:6px;padding:10px 8px;margin-top:14px;font-size:11px}.calendar-event strong{display:block;margin-bottom:5px}.timeline-item{border-left:1px solid #d9ddcf;padding:0 0 20px 20px;margin-left:5px;position:relative}.timeline-item:before{content:"";position:absolute;left:-4px;top:4px;width:7px;height:7px;border-radius:50%;background:#95a486}.timeline-item p{margin:7px 0 0;font-size:12px}.completed{text-decoration:line-through;color:var(--muted)}.member{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:15px 0;border-bottom:1px solid var(--border)}.member .filters{margin:0}.login{max-width:800px;margin:45px auto}.login h1{font-size:54px}.login article{max-width:490px;margin-top:35px}.public footer,footer{padding:25px;text-align:center;font-size:10px;letter-spacing:.5px;color:#85897f}summary{cursor:pointer;color:var(--olive);font-size:12px}.panel form{margin-top:15px}.panel button{margin-top:15px}[hidden]{display:none!important}
@media(min-width:1600px){main{padding:46px}}@media(max-width:1100px){.sidebar{width:190px;padding-left:15px;padding-right:15px}.workspace .main-shell{margin-left:190px}main{padding:25px}.dashboard-columns,.detail-columns{grid-template-columns:minmax(0,1.4fr) minmax(260px,1fr)}.stats{gap:10px}.stats article{padding:16px}.topbar{padding:16px 25px}.topbar .muted{display:none}.filters label{min-width:110px}}@media(max-width:850px){.dashboard-columns,.detail-columns{grid-template-columns:1fr}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.member{align-items:flex-start;flex-direction:column}.heading{align-items:flex-start}.heading .actions{margin:0}.form-grid{grid-template-columns:1fr}.sidebar{width:175px}.workspace .main-shell{margin-left:175px}}@media(max-width:600px){.sidebar{position:static;width:100%;padding:18px 16px 10px;display:block;border-right:0;border-bottom:1px solid var(--border)}.sidebar .brand{font-size:29px;margin:0}.brand span{font-size:7px;margin-top:5px}.nav-caption,.sidebar-bottom .avatar{display:none}.sidebar nav{display:flex;gap:3px;margin-top:18px;overflow:auto}.sidebar nav a{font-size:10px;padding:9px 8px;display:flex;flex-direction:column;gap:5px;flex:1;white-space:nowrap}.sidebar nav img{width:16px;height:16px}.sidebar-bottom{display:flex;flex-wrap:wrap;align-items:center;gap:12px;border:0;padding:12px 0 0;font-size:10px}.sidebar-bottom small{font-size:10px}.sidebar-bottom form{margin:0 0 0 auto}.sidebar-bottom button{font-size:10px}.workspace .main-shell{margin-left:0}.topbar{padding:12px 18px;min-height:45px}.topbar>span{font-size:10px}main{padding:24px 16px}.heading{gap:14px;flex-wrap:wrap;margin-bottom:20px}h1{font-size:33px}.stats{gap:10px}.stats article{padding:16px}.stats strong{font-size:32px}.stats small{font-size:10px}article,.panel{padding:20px;margin-bottom:18px}.table{padding:0}.tabs{overflow:auto}.tabs a,.tabs button{padding:11px 12px}.filters{gap:10px}.filters label{flex:1;min-width:135px}.filters .grow{flex-basis:100%}.list-row{gap:10px}.list-row .actions{gap:7px}.list-row .compact{font-size:11px;padding:7px}.section-heading{align-items:flex-start}.section-heading h2{font-size:16px}.login h1{font-size:39px}.empty{padding:30px 8px}.detail-columns,.dashboard-columns{gap:0}.kanban-column{min-width:245px}.member .filters{width:100%}.week-grid{margin-left:-2px;margin-right:-2px}.actions .button,.actions button{font-size:12px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
.editor-drawer{position:fixed;inset:0 0 0 auto;margin:0;height:100dvh;max-height:100dvh;width:min(720px,100%);max-width:100%;border:0;border-left:1px solid var(--border);background:var(--bg);padding:24px;overflow-y:auto;color:var(--ink)}.editor-drawer::backdrop{background:#23262255}.editor-drawer .editor{border:0;margin:20px 0;padding:10px;background:none}.drawer-close{display:block;margin-left:auto}.editor-drawer .form-grid{grid-template-columns:1fr}
