:root{--ink:#1d2229;--side:#191d24;--lime:#c9f067;--bg:#f5f6f7;--line:#e8ebee;--mute:#8b919a;--panel:#fff;--radius:15px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font:14px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",Inter,Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #6f9ed4;outline-offset:2px}.app-shell{display:flex;min-height:100vh}.sidebar{background:var(--side);color:#b2bac5;width:235px;min-width:235px;position:sticky;top:0;height:100vh;padding:26px 14px 16px;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:10px;padding:0 10px;margin-bottom:45px;color:#fff}.brand-icon{width:31px;height:31px;display:grid;place-items:center;background:var(--lime);color:#131719;font-size:20px;font-weight:900;border-radius:9px;transform:rotate(-6deg)}.brand b{font-size:14px;letter-spacing:-.6px}.brand small{display:block;color:#87909c;font-size:9px;letter-spacing:1.6px;font-weight:600}.side-label{font-size:10px;letter-spacing:1.4px;font-weight:700;color:#707987;margin:0 14px 12px}.side-label.other{margin-top:30px}.nav{display:grid;gap:5px}.nav a{display:flex;align-items:center;gap:12px;border-radius:10px;padding:11px 12px;color:#aeb5c0;font-size:13px;font-weight:600}.nav a:hover{background:#262c36;color:white}.nav a.active{background:#343a43;color:white;box-shadow:inset 3px 0 var(--lime)}.nav a span{width:18px;font-size:19px;line-height:16px;text-align:center;font-weight:400}.side-bottom{margin-top:auto}.chip-soft{background:#2a3039;border-radius:10px;padding:13px 12px;margin:10px 0 18px}.chip-soft b{display:block;color:var(--lime);font-size:10px;letter-spacing:.4px}.chip-soft small{display:block;color:#9ca6b3;font-size:10px;line-height:1.65;margin-top:4px}.user-mini{border-top:1px solid #303640;display:flex;align-items:center;gap:9px;padding:15px 2px 0}.user-mini b{display:block;color:#fff;font-size:11px}.user-mini small{display:block;font-size:10px;color:#929aa6}.avatar,.top-avatar{height:33px;width:33px;display:grid;place-items:center;border-radius:50%;background:#dce5ed;color:#596675;font-size:11px;font-weight:800;flex:none}.avatar.large{height:44px;width:44px}.logout{border:0;background:none;color:#aab2be;font-size:20px;padding:5px 3px}.user-mini form{margin-left:auto}.content{flex:1;min-width:0}.topbar{height:68px;border-bottom:1px solid var(--line);background:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 39px}.crumb{color:#9ba3ac;font-size:11px;font-weight:700;letter-spacing:.1px}.crumb a{color:#6a7380}.crumb span{padding:0 8px}.topright{display:flex;align-items:center;gap:10px;font-size:11px;color:#939da9}.top-avatar{margin-left:12px;height:28px;width:28px;font-size:10px}.live-dot{width:7px;height:7px;background:#7bb453;border-radius:50%}.page{max-width:1550px;margin:auto;padding:35px 38px 56px}.page-head{display:flex;align-items:start;justify-content:space-between;gap:20px;margin-bottom:26px}.eyebrow{color:#a5adb8;font-size:10px;font-weight:800;letter-spacing:1.2px;margin-bottom:7px}.page-head h1{margin:0;font-size:27px;line-height:1.25;letter-spacing:-.9px;font-weight:780}.page-head p{margin:8px 0 0}.muted{color:var(--mute)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:38px;padding:9px 14px;font-size:12px;font-weight:700;border-radius:9px;white-space:nowrap;border:1px solid var(--line);background:#fff;color:var(--ink)}.btn.primary{background:#20252c;color:white;border-color:#20252c}.btn.primary:hover{background:#414a55}.btn.subtle:hover{background:#f1f4f5}.btn.full{width:100%}.text-link{color:#6f7b89;font-size:11px;font-weight:700}.text-link:hover{text-decoration:underline}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:0 0 20px}.stat,.panel,.form-panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius)}.stat{padding:19px 20px;min-height:130px}.stat-label{font-size:11px;color:#697582;font-weight:700}.stat-value{font-size:30px;font-weight:760;margin:8px 0 2px;letter-spacing:-1px}.stat-value.compact{font-size:24px}.stat-footer{font-size:10px;color:#89939e}.dash-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:20px}.panel{padding:19px 20px;margin-bottom:0;min-width:0}.panel+.panel{margin-top:18px}.panel h2,.form-panel h2{margin:0;font-size:15px;letter-spacing:-.3px}.panel-title{display:flex;align-items:start;justify-content:space-between;gap:18px;margin-bottom:16px}.panel-title p{font-size:11px;color:var(--mute);margin:3px 0 0}.list{margin:0 -20px}.list-row,.inbox-row{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:13px 20px;border-top:1px solid #eef0f2}.list-row:hover,.inbox-row:hover{background:#fafbfc}.list-row strong,.inbox-row strong{display:block;font-size:12px}.list-row small{display:block;color:var(--mute);font-size:10px;margin-top:4px}.status{display:inline-flex;padding:5px 8px;font-size:10px;font-weight:700;border-radius:6px;white-space:nowrap;background:#eaf2e5;color:#5e864b}.status-new{background:#eaf4fd;color:#4d8cbc}.status-negotiating{background:#fcf0e1;color:#b67b39}.status-contract{background:#fff1e1;color:#b7762b}.status-shooting{background:#e8eefc;color:#607aca}.status-production{background:#eee9fa;color:#7762b3}.status-completed{background:#e9f4e9;color:#4a925b}.status-lost{background:#f1eff0;color:#9d939b}.date-pill{font-size:10px;color:#7d8895;background:#f4f5f6;border:1px solid #e9edf0;border-radius:7px;padding:5px 8px;white-space:nowrap}.empty{padding:28px 3px;font-size:12px;color:#9da5af}.search-bar{display:flex;gap:8px;margin-bottom:20px;max-width:620px}.search-bar input{flex:1}.kanban{display:grid;grid-template-columns:repeat(7,minmax(215px,1fr));overflow-x:auto;gap:12px;padding-bottom:14px;align-items:start}.kanban-column{background:#edf0f2;border-radius:12px;padding:11px;min-height:240px}.column-head{display:flex;align-items:center;justify-content:space-between;gap:9px;margin:1px 2px 12px;font-size:11px}.column-head>div{display:flex;align-items:center;gap:7px}.count{background:#e9edf1;color:#818b98;border-radius:10px;padding:3px 7px;font-size:10px;font-weight:800}.stage-dot{display:inline-block;height:6px;width:6px;border-radius:50%;background:#6b7e92}.dot-new{background:#5292c5}.dot-negotiating{background:#e09a4c}.dot-contract{background:#d5ab64}.dot-shooting{background:#657cce}.dot-production{background:#9b75cf}.dot-completed{background:#6cab65}.dot-lost{background:#a0a6b1}.column-list{display:grid;gap:10px}.lead-card{background:#fff;border:1px solid #e3e7ea;border-radius:10px;padding:13px 12px;box-shadow:0 1px 2px #17293b05}.lead-card:hover{border-color:#b5c9dd;box-shadow:0 6px 20px #242c360e}.lead-card strong{font-size:12px;display:block;line-height:1.4;margin:7px 0 4px}.lead-card p{font-size:11px;margin:0;color:#7e8994}.mini-source{font-size:10px;color:#7086c9;font-weight:700}.lead-meta{font-size:10px;color:#9ca5ae;margin-top:10px}.lead-bottom{margin-top:16px;display:flex;justify-content:space-between;font-size:10px;color:#a8b0b9;padding-top:9px;border-top:1px solid #f0f2f3}.empty-column{font-size:11px;text-align:center;color:#a1a8b0;padding:24px 8px}.form-panel{max-width:890px;padding:26px}.stack{display:grid;gap:16px}.stack h2{padding-top:9px}.stack label,.form-grid label{display:grid;gap:6px;font-size:11px;font-weight:700;color:#6f7883}input,textarea,select{border:1px solid #dfe3e7;border-radius:8px;background:#fff;min-width:0;padding:10px 11px;outline:none;color:#303a45;width:100%;font-size:12px}textarea{resize:vertical;line-height:1.55}input:focus,textarea:focus,select:focus{border-color:#9cbded;box-shadow:0 0 0 3px #e9f1fd}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.required{color:#d86c62}.detail-head{align-items:center}.detail-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(245px,.8fr);gap:18px}.detail-main{display:grid;gap:18px;min-width:0}.detail-side{display:flex;flex-direction:column;gap:18px}.detail-side .panel{margin:0}.inline-form{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.inline-form select{flex:1}.inline-form>input:not([type=hidden]){width:auto;flex:1}.inline-form>input[type=date]{max-width:175px}.form-top{border-top:1px solid var(--line);padding-top:17px;margin-top:19px}.timeline{max-height:470px;overflow-y:auto;display:grid;gap:12px;padding-bottom:5px}.message-line{max-width:88%;border:1px solid #e5e9ec;background:#f6f7f8;border-radius:11px;padding:10px 12px}.message-out{margin-left:auto;background:#edf5dd;border-color:#e1ebd4}.message-meta{font-size:10px;color:#7b8995;margin-bottom:5px}.message-body{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px}.notice{font-size:11px;background:#f7f8f9;padding:10px 12px;border-left:3px solid #cbd6e4;margin:0;color:#83909d}.task-row{display:flex;align-items:center;gap:12px;border-bottom:1px solid #eff1f3;padding:10px 0}.task-row b{font-size:12px}.task-row small{display:block;color:#9ca5af;font-size:10px}.task-done{text-decoration:line-through;color:#a9b0b8}.check-button{border:0;background:transparent;color:#9ca5af;font-size:22px;padding:0}.check-button.checked{color:#70af65}.total-line{display:flex;justify-content:space-between;gap:12px;align-items:center;border-radius:10px;background:#f5f7f8;padding:13px 15px;font-size:12px}.total-line strong{font-size:18px}.person{display:flex;align-items:center;gap:11px;padding:16px 0}.person b,.person strong{font-size:12px}.person small{display:block;font-size:10px;color:#8b939f}.key-value{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-top:1px solid #f0f2f4;font-size:11px}.key-value span{color:#9099a4}.key-value b{text-align:right;overflow-wrap:anywhere}.plain-note{white-space:pre-wrap;font-size:11px;color:#6c7580;padding-top:12px}.finance-big{font-size:27px;font-weight:800;margin:15px 0 0}.calendar-list{display:grid;gap:0}.calendar-event{display:flex;align-items:center;gap:16px;padding:17px 0;border-top:1px solid var(--line)}.event-date{background:#eef4e4;border-radius:9px;min-width:97px;text-align:center;padding:10px 8px}.event-date b{display:block;font-size:24px;line-height:1}.event-date small{font-size:10px;color:#7f8c7e}.event-info{flex:1}.event-info strong{font-size:13px}.event-info p{color:#9ba4ac;font-size:11px;margin:3px 0}.inbox-row{justify-content:initial;min-height:73px}.inbox-row div{flex:1;min-width:0}.inbox-row p{color:#919ba5;margin:4px 0 0;font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.table-scroll{overflow-x:auto}.data-table{width:100%;border-collapse:collapse;text-align:left;min-width:700px}.data-table th{padding:14px 12px;font-size:10px;color:#89929d;background:#f8f9fa}.data-table td{padding:17px 12px;border-top:1px solid #eff1f3;font-size:12px}.data-table td small{display:block;font-size:10px;color:#929ba5}.table-link{color:#354963;font-weight:700}.table-link:hover{text-decoration:underline}.template-card{border-top:1px solid var(--line);padding:16px 0}.template-card strong{font-size:12px;margin-right:10px}.template-card pre{white-space:pre-wrap;word-break:break-word;font-family:inherit;font-size:12px;color:#59636f;margin:10px 0 12px}.login-page{min-height:100vh;background:#171b22;display:flex;align-items:center;justify-content:center;padding:25px}.login-card{width:100%;max-width:410px;background:#fff;border-radius:20px;padding:36px;box-shadow:0 30px 80px #0003}.login-brand{display:flex;align-items:center;gap:10px;margin-bottom:34px}.login-brand b{font-size:16px;display:block}.login-brand small{display:block;letter-spacing:2px;font-size:10px;color:#a0a8b3}.login-card h1{font-size:27px;letter-spacing:-.6px;margin:0 0 5px}.login-card .muted{margin:0 0 26px;font-size:12px}.login-caption{font-size:10px;color:#a2acb5;margin-top:23px;line-height:1.65}.alert{background:#fff0ed;color:#ac594b;padding:10px 12px;border-radius:8px;font-size:12px}
@media(max-width:1050px){.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-grid{grid-template-columns:minmax(0,1fr)}.detail-side{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.dash-grid{grid-template-columns:1fr}.page{padding:26px 22px 45px}.topbar{padding:0 22px}}@media(max-width:700px){.app-shell{display:block}.sidebar{position:relative;width:100%;height:auto;min-height:0;padding:14px 15px}.brand{margin:0 0 12px}.side-label,.side-bottom,.sidebar .other{display:none}.nav{display:flex;gap:5px;overflow-x:auto;scrollbar-width:none}.nav a{white-space:nowrap;padding:7px 10px;font-size:11px}.nav a span{display:none}.topbar{height:45px}.topright{font-size:0}.top-avatar{font-size:10px}.page{padding:22px 12px}.page-head{align-items:stretch;flex-direction:column;gap:14px;margin-bottom:18px}.page-head h1{font-size:24px}.page-head>.btn{align-self:flex-start}.stats{gap:8px}.stat{padding:14px;min-height:105px}.stat-value{font-size:24px}.stat-value.compact{font-size:18px}.panel{padding:16px 14px}.list{margin:0 -14px}.list-row,.inbox-row{padding:12px 14px}.form-grid,.detail-side{grid-template-columns:1fr}.form-panel{padding:18px 15px}.inline-form{align-items:stretch}.inline-form>*{width:100%!important;max-width:none!important}.calendar-event{flex-wrap:wrap}.calendar-event .btn{width:100%}.sidebar .nav+.side-label{display:none}}

/* STORIESBOOK CRM v0.2 additions */
.detail-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap}
.edit-form{max-width:960px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.draggable-card{cursor:grab;transition:box-shadow .16s ease,opacity .16s ease}
.draggable-card:active{cursor:grabbing}
.draggable-card.is-dragging{opacity:.45}
.kanban-column.drop-target{outline:2px dashed #94bb4c;outline-offset:-4px;background:#e9f1df}
.lead-open{display:block}
.lead-open:hover strong{text-decoration:underline}
.lead-stage-form,.prod-stage-form{display:flex;align-items:center;gap:6px;margin:14px 0 5px}
.lead-stage-form select,.prod-stage-form select{min-width:0;font-size:11px;padding:8px}
.lead-stage-form .btn,.prod-stage-form .btn{padding:8px 9px;min-height:34px;font-size:10px}
.lead-owner{font-size:10px;color:#697b65;margin-top:8px;background:#f1f6e7;padding:5px 7px;border-radius:5px}
.lead-bottom>a{font-weight:700;color:#5a76a0}
.lead-bottom>a:hover{text-decoration:underline}
.board-status{font-size:12px;color:#677b8c;margin-top:6px;min-height:1.4em}
.production-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}
.stat-mini{min-height:100px}
.stat-mini .stat-value{font-size:25px}
.stat-mini .stat-value.compact{font-size:20px}
.production-board{grid-template-columns:repeat(6,minmax(235px,1fr))}
.prod-money{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;align-items:center;padding-top:10px;margin-top:10px;border-top:1px solid #edf0f1;font-size:11px}
.prod-money>span{color:#7c8794;font-size:10px}
.toolbar{display:flex;align-items:start;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:14px}
.toolbar .search-bar{margin:0;flex:1;max-width:650px}
.mode-links{display:flex;gap:8px;flex-wrap:wrap}
.footnote{margin-top:18px}
.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;margin-bottom:16px}
.cal-switch,.cal-nav{display:flex;align-items:center;gap:6px}
.cal-nav strong{min-width:160px;text-align:center;font-size:14px;font-weight:750}
.calendar-panel{padding:12px;margin-bottom:18px}
.calendar-grid{display:grid;grid-template-columns:repeat(var(--calcols),minmax(0,1fr));gap:3px}
.cal-headcell{background:#f0f2f4;font-size:11px;color:#77818d;font-weight:750;text-align:center;padding:9px 4px;border-radius:5px}
.cal-day{min-height:112px;border:1px solid #e8ebed;border-radius:7px;padding:8px;background:#fff;min-width:0}
.cal-day.outside{background:#f8f9fa;color:#a5aeb7}
.cal-day.today{border-color:#a5ca5d;background:#f8fbf1}
.cal-day-number{font-size:12px;font-weight:800;margin-bottom:8px}
.cal-day-number>a:hover{text-decoration:underline}
.cal-date-small{font-size:9px;color:#a5acb5}
.cal-event-item{display:block;background:#eaf2dd;color:#4f6830;border-left:3px solid #95b95c;border-radius:4px;font-size:10px;font-weight:700;padding:5px 6px;margin:0 0 4px;overflow-wrap:anywhere;line-height:1.3}
.cal-event-item:hover{background:#daeac7}
.calendar-list-panel{margin-top:6px}
@media(max-width:1200px){.production-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.cal-day{min-height:88px;padding:5px}.cal-event-item{font-size:9px}}
@media(max-width:760px){.production-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.calendar-toolbar{align-items:stretch}.cal-switch,.cal-nav{justify-content:center}.cal-switch .btn{padding:6px 9px;min-height:34px}.calendar-grid{overflow-x:auto}.cal-day{min-height:75px;padding:3px;border-radius:4px}.cal-headcell{font-size:10px}.cal-event-item{font-size:9px;padding:4px}.cal-day-number{font-size:11px}.detail-actions{justify-content:flex-start}}
@media(max-width:480px){.production-summary{gap:8px}.stat-mini{padding:12px;min-height:85px}.stat-mini .stat-value.compact{font-size:16px}.cal-event-item{font-size:8px}.cal-date-small{display:none}.calendar-panel{padding:6px}}
/* STORIESBOOK CRM v0.3 */
.v03-sections{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:22px}
.v03-sections a{background:#fff;padding:9px 13px;border:1px solid var(--line);border-radius:9px;font-weight:700;font-size:12px}
.v03-sections a:hover{border-color:#9bb85e;background:#f8fbef}
.form-action{display:flex;align-items:end;justify-content:start}
.v03-task{border-top:1px solid var(--line);padding:18px 3px;display:grid;gap:10px}
.v03-task-summary{display:flex;justify-content:space-between;gap:10px;align-items:center}
.v03-task-meta{color:#8b949f;font-size:11px}
.v03-task-meta a{color:#45628b;font-weight:700}
.v03-task-edit{padding-top:10px}
.v03-task-edit summary{cursor:pointer;color:#596b85;font-weight:700;font-size:12px;margin-bottom:12px}
.overdue{color:#b54742;background:#fff1ee}
.token-list{display:flex;flex-wrap:wrap;gap:7px;margin-top:15px}
.token-list code{font-size:11px;background:#eff2f6;border:1px solid #e2e7eb;padding:5px 8px;border-radius:6px}
.production-card:focus-within{outline:2px solid #d5e7b3}
@media(max-width:760px){.v03-sections{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin}.v03-sections a{white-space:nowrap}}
/* CRM v0.4 channel blocks */
.integration-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:22px 0}
.integration-grid .panel{min-height:218px}
.integration-grid .panel h2{margin-bottom:16px}
.channel-reply{margin:20px 0;padding:18px;background:#f5f8f0;border:1px solid #dbe3cf;border-radius:12px}
.channel-reply h3{margin:0 0 8px}
.channel-reply form{border-top:1px solid #e0e5d9;padding-top:14px;margin-top:14px}
@media(max-width:900px){.integration-grid{grid-template-columns:1fr}}
/* v0.5 usability */
.dashboard-stage-legend{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 18px}
.dashboard-stage-legend .status{font-size:11px}
.status-new{background:#e7f1ff!important;color:#216bb6!important}
.status-negotiating{background:#fff2d7!important;color:#9a5b0d!important}
.status-contract{background:#eee7ff!important;color:#7548ba!important}
.status-shooting{background:#ddf4f7!important;color:#127b8c!important}
.status-production{background:#fde8dc!important;color:#a05224!important}
.status-completed{background:#e5f4df!important;color:#31783b!important}
.status-lost{background:#f2e8e8!important;color:#a63c43!important}
.danger-outline{border:1px solid #c86265!important;color:#a83f44!important;background:#fff!important}
.quick-edit-link{border:0;background:none;padding:0;cursor:pointer;font:inherit;font-size:11px;font-weight:750;color:#456b91}
.crm-dialog{border:1px solid #e1e5eb;border-radius:16px;box-shadow:0 25px 80px #18202e4a;width:min(790px,calc(100vw - 28px));max-height:92vh;padding:25px;overflow-y:auto;background:#fff;color:#253142}
.crm-dialog::backdrop{background:#0f1728a8}
.crm-dialog .dialog-top{display:flex;justify-content:space-between;align-items:start;gap:20px}
.crm-dialog .dialog-top h2{margin-top:0}
.crm-dialog .dialog-close{font-size:18px;border:0;background:#eef0f3;color:#586778;border-radius:9px;cursor:pointer;padding:7px 13px}
.crm-dialog .dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:14px}
.doc-actions{display:flex;gap:8px;flex-wrap:wrap}
.cal-day.cal-drop-target{outline:2px dashed #86a850;outline-offset:-4px;background:#edf8db}
.cal-event-item.draggable-shoot{cursor:grab}
.cal-event-item.is-dragging{opacity:.5}
.reminder-settings{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:20px}
.switch-row{display:flex!important;flex-direction:row!important;align-items:center;gap:9px;font-size:13px}
.switch-row input{width:auto!important;min-width:16px;height:16px}
.chat-layout{display:grid;grid-template-columns:minmax(230px,340px) minmax(0,1fr);min-height:67vh;border:1px solid var(--line);border-radius:14px;background:#fff;overflow:hidden}
.chat-list{border-right:1px solid var(--line);background:#fbfcfc;overflow:auto;max-height:78vh}
.chat-list-head{padding:20px;border-bottom:1px solid var(--line)}
.chat-item{display:flex;gap:11px;padding:15px 14px;border-bottom:1px solid #edf0f2;color:inherit;text-decoration:none}
.chat-item:hover,.chat-item.selected{background:#edf4e6}
.chat-item .chat-preview{min-width:0;flex:1}
.chat-preview strong,.chat-preview small,.chat-preview p{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:0}
.chat-preview strong{font-size:13px}
.chat-preview small{font-size:11px;color:#6e7b88;margin-top:3px}
.chat-preview p{font-size:12px;color:#657789;margin-top:8px}
.chat-window{display:flex;flex-direction:column;min-width:0;max-height:78vh}
.chat-header{padding:18px 22px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:10px}
.chat-header strong{font-size:16px}
.chat-stream{overflow-y:auto;flex:1;min-height:280px;display:flex;flex-direction:column;gap:10px;padding:22px;background:#f7f9fb}
.chat-bubble{max-width:min(77%,600px);border-radius:13px 13px 13px 3px;padding:11px 14px;background:#fff;border:1px solid #e8ebee;white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;line-height:1.5}
.chat-bubble.outgoing{align-self:flex-end;background:#e7f2db;border-color:#d1e4c0;border-radius:13px 13px 3px 13px}
.chat-bubble.note{align-self:center;background:#fff7e6;border-color:#f2e6c8;max-width:91%}
.chat-bubble .chat-meta{font-size:10px;opacity:.66;margin-top:7px}
.chat-reply{padding:15px 18px;border-top:1px solid var(--line);display:grid;gap:10px}
.chat-reply textarea{min-height:70px}
.chat-reply .btn{justify-self:end}
@media(max-width:760px){.crm-dialog{padding:15px}.chat-layout{grid-template-columns:1fr}.chat-list{max-height:200px;border-right:0;border-bottom:1px solid var(--line)}.chat-window{max-height:68vh}.chat-bubble{max-width:90%}.reminder-settings{grid-template-columns:1fr}}

.lead-bottom{align-items:center;gap:7px;flex-wrap:wrap}
.quick-delete-link{border:0;background:#fff0ef;color:#9b4541;border-radius:5px;font-weight:800;font-size:12px;padding:2px 7px;cursor:pointer}

/* v0.5.1: order details / gallery layout repair */
#gallery{display:block;position:static;float:none;margin:0 0 18px;clear:both;scroll-margin-top:20px}
#gallery .gallery-form-footer{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
#gallery .gallery-form-footer .muted{font-size:11px}
.order-fields-heading{padding-top:8px;border-top:1px solid var(--line)}
.order-fields-heading h3{font-size:14px;margin:0 0 3px}
.order-fields-heading p,.field-helper{font-size:11px;color:#7c8996;margin:0}
.form-span-all{grid-column:1/-1}
.prepay-words{font-size:11px;color:#667382;margin:-2px 0 11px;line-height:1.5}
@media(max-width:760px){#gallery .gallery-form-footer{align-items:stretch;flex-direction:column}#gallery .gallery-form-footer .btn{width:100%}}
/* STORIESBOOK CRM v0.6 single order workspace */
.ws-head{align-items:flex-start}.ws-nav{position:sticky;top:0;z-index:4;display:flex;gap:8px;flex-wrap:wrap;padding:9px 0 15px;background:var(--bg)}.ws-nav a{display:inline-flex;align-items:center;padding:9px 13px;border:1px solid #dce2e8;border-radius:9px;background:#fff;font-weight:750;font-size:12px}.ws-nav a:hover,.ws-nav a.is-primary{border-color:#9cb765;background:#edf6dc}.ws-workspace{padding:0;overflow:visible}.ws-workspace>.panel-title{padding:24px 25px 18px}.ws-workspace>.panel-title h2{font-size:21px}.ws-form{padding:0 24px 23px}.ws-group{border:1px solid #e3e8ed;border-radius:13px;margin:0 0 12px;background:#fff;overflow:hidden}.ws-group>summary{list-style:none;display:flex;align-items:center;gap:13px;padding:17px 18px;cursor:pointer;background:#f9fafb}.ws-group>summary::-webkit-details-marker{display:none}.ws-group>summary strong{font-size:14px}.ws-group>summary small{display:block;font-size:11px;color:#82909d;margin-top:2px}.ws-number{display:grid;place-items:center;width:35px;height:35px;flex:none;background:#eaf5d8;border:1px solid #d5e7bb;border-radius:10px;font-size:12px;font-weight:850;color:#5a7738}.ws-chevron{margin-left:auto;font-size:18px;color:#768493;transform:rotate(0);transition:transform .15s}.ws-group[open] .ws-chevron{transform:rotate(180deg)}.ws-body{padding:20px!important;margin:0}.ws-body label{min-width:0}.ws-body input,.ws-body textarea,.ws-body select{background:#fff}.ws-help{color:#687985;font-size:12px;padding:0 20px 16px}.ws-help a{font-weight:700;color:#436a94}.ws-calc{padding:14px 16px;background:#f1f5ec;border:1px solid #dde8d3;border-radius:10px;display:grid;gap:5px}.ws-calc div{display:flex;align-items:center;justify-content:space-between;gap:12px}.ws-calc span{color:#657268;font-size:12px}.ws-calc strong{font-size:19px}.ws-calc small{color:#6c796a;font-size:11px}.ws-check{display:flex!important;flex-direction:row!important;align-items:center;gap:10px;line-height:1.5}.ws-check input{width:17px!important;height:17px;flex:none}.ws-caution{background:#fff9ed;border-left:3px solid #dfb96a;padding:12px 15px;font-size:12px;color:#7c6330}.ws-footer{position:sticky;bottom:0;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:15px;background:#f3f6ef;border:1px solid #dce8d2;border-radius:12px;padding:13px 16px;box-shadow:0 -5px 22px #1c39200a}.ws-footer strong,.ws-footer small{display:block}.ws-footer small{font-size:11px;color:#657667;max-width:560px}.ws-footer button{white-space:nowrap}.ws-success{background:#eaf5dd;border:1px solid #c9e5aa;color:#466b2b;border-radius:10px;font-weight:750;margin:0 0 18px;padding:13px 15px}.ws-after-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,330px);gap:18px;margin-top:22px}.ws-after-main,.ws-after-grid .detail-side{min-width:0}.ws-after-grid .detail-side{display:grid;align-content:start;gap:16px}.ws-after-grid .detail-side .panel{margin:0}.ws-gallery-status{background:#f4f7fa;padding:15px;border-radius:10px;font-weight:650;font-size:13px}.ws-gallery-status small{display:block;margin-top:8px;color:#687b8b}.ws-gallery-status a{color:#496a97}.ws-create-card{background:#f5f8f0;padding:15px;border-radius:10px}.ws-create-card p{margin:0 0 12px;color:#657569}.ws-workspace .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:1100px){.ws-after-grid{grid-template-columns:1fr}.ws-after-grid .detail-side{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.ws-workspace>.panel-title{padding:18px 15px}.ws-form{padding:0 12px 13px}.ws-body{padding:14px!important}.ws-workspace .form-grid{grid-template-columns:1fr}.ws-footer{flex-direction:column;align-items:stretch}.ws-footer button{width:100%}.ws-nav{flex-wrap:nowrap;overflow-x:auto}.ws-nav a{white-space:nowrap}.ws-after-grid .detail-side{grid-template-columns:1fr}.ws-calc div{align-items:flex-start;flex-direction:column}}

.ws-health{display:flex;gap:7px;flex-wrap:wrap;margin:0 0 12px}.ws-health span{border-radius:20px;padding:6px 10px;font-size:11px;font-weight:750}.ws-health .done{background:#e6f3dd;color:#4a7538}.ws-health .incomplete{background:#eef0f3;color:#65727e}
