:root{--ink:#1b1b21;--muted:#93939f;--line:#e9e9ed;--bg:#dedee1;--purple:#6737d4;--surface:#fff;--soft:#f7f7f9;--font:'DM Sans',Inter,ui-sans-serif,system-ui,-apple-system,'Segoe UI',sans-serif}
*{box-sizing:border-box}html{font-family:var(--font);color:var(--ink)}body{margin:0;background:var(--bg);font-size:13px}button,input,select,textarea{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #cab7ff;outline-offset:2px}button:disabled{opacity:.45;cursor:not-allowed}.icon{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.shell{width:min(calc(100% - 72px),1480px);min-height:calc(100vh - 108px);height:calc(100vh - 108px);margin:54px auto;background:var(--surface);border:1px solid #ffffffb0;border-radius:19px;display:flex;overflow:hidden;box-shadow:0 12px 50px #55535e0b}.sidebar{width:226px;flex:0 0 226px;display:flex;flex-direction:column;background:linear-gradient(160deg,#fafafb 7%,#f4f2fc 64%,#fff8f6 100%);border-right:1px solid #e7e7ec;z-index:5}.brand-row{height:75px;display:flex;align-items:center;justify-content:space-between;padding:0 16px 0 17px;border-bottom:1px solid #e9e9ee}.brand{display:flex;align-items:center;gap:10px;font-size:19px;letter-spacing:-.9px;font-weight:800}.brand-mark{width:29px;height:29px;border-radius:9px;display:grid;place-items:center;color:white;background:linear-gradient(150deg,#7449ea,#5724be);box-shadow:0 3px 8px #6a45c344}.brand-mark .icon{width:15px;height:15px}.icon-btn{border:0;background:transparent;padding:7px;display:grid;place-items:center;color:#52525c;border-radius:7px}.icon-btn:hover,.round-btn:hover{background:#eeeef3}.sidebar-toggle .icon{width:16px;height:16px}.sidebar-nav{padding:18px 11px;overflow:auto;flex:1;scrollbar-width:thin}.nav-top{padding-bottom:18px;border-bottom:1px solid #e9e9ef;margin-bottom:18px}.nav-item{display:flex;gap:12px;align-items:center;width:100%;text-align:left;border:0;background:transparent;padding:10px 10px;min-height:41px;border-radius:9px;color:#363640;font-weight:600;transition:.15s}.nav-item:hover{background:#f0eef8}.nav-item.active{background:#fff;color:#18171f;box-shadow:0 3px 16px #a7a4b019}.nav-item.active>.icon{color:#6536cf}.nav-item>.icon{width:18px;height:18px;stroke-width:1.8}.nav-item>span:nth-child(2){flex:1}.nav-count{background:#f2effe;color:#6238c9;border-radius:7px;font-weight:800;padding:2px 7px;font-size:11px}.nav-section-label{font-size:10px;font-weight:700;letter-spacing:.35px;margin:0 10px 8px;color:#66656e}.records-label{margin-top:41px}.nav-trailing{font-size:16px}.sidebar-bottom{padding:9px 11px 12px}.profile-card{display:flex;align-items:center;gap:10px;width:100%;border:0;background:#ffffffb8;border-radius:12px;padding:12px 9px;margin-top:20px;text-align:left;box-shadow:0 0 0 1px #f7f5f4}.profile-text{display:flex;flex-direction:column;gap:1px;min-width:0;flex:1}.profile-text strong{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.profile-text small{font-size:10px;color:#7a7a82;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.profile-card .icon{width:15px}.workspace{min-width:0;flex:1;display:flex;flex-direction:column;background:linear-gradient(100deg,#fefefe 65%,#fffafa 100%)}.topbar{height:76px;border-bottom:1px solid var(--line);padding:0 22px;display:flex;align-items:center;gap:20px;flex-shrink:0;background:linear-gradient(110deg,#fff 35%,#fff8fb 100%)}.welcome{min-width:165px;font-size:12px;display:flex;align-items:center}.welcome span{display:flex;flex-direction:column;color:#6b6a74;line-height:1.35}.welcome strong{color:#17171b;font-size:13px}.search-wrap{display:flex;align-items:center;gap:12px;width:min(520px,100%);height:38px;border-radius:10px;background:#fff;border:1px solid #f0eef1;padding:0 12px;box-shadow:0 5px 20px #9b93a20b}.search-wrap>.icon{width:16px;color:#383843}.search-wrap input{border:0;outline:none;width:100%;background:transparent;color:#30303a;font-size:12px}.search-wrap input::placeholder{color:#90909b}.keyboard-hint{white-space:nowrap;background:#f9f8fb;border-radius:5px;font-size:11px;padding:3px 6px;color:#53535d}.top-actions{margin-left:auto;display:flex;align-items:center;gap:12px}.round-btn{width:34px;height:34px;border:1px solid #f5f4f5;border-radius:50%;background:#fff;display:grid;place-items:center;position:relative}.round-btn>.icon{width:17px;height:17px}.notification-dot{width:5px;height:5px;border-radius:50%;background:#e8728b;position:absolute;top:6px;right:7px}.mobile-menu{display:none}.main{flex:1;min-height:0;overflow:auto;padding:19px 19px 24px;scrollbar-color:#dddce3 transparent;scrollbar-width:thin}.page-loading{height:100%;min-height:300px;display:flex;align-items:center;justify-content:center;gap:15px;color:var(--muted);flex-direction:column}.loading-spinner{height:27px;width:27px;border:3px solid #eee9fc;border-top-color:var(--purple);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
/* Task board */
.toolbar{border:1px solid #eae9eb;border-radius:14px;padding:12px 12px 12px 16px;display:flex;align-items:center;gap:13px;background:#fff;margin-bottom:19px;min-height:69px}.date-block{width:165px;flex-shrink:0}.date-block strong{font-size:16px;display:block;font-weight:800;letter-spacing:-.4px}.date-block small{display:block;font-size:10px;color:#9695a1;margin-top:2px}.toolbar-separator{width:1px;height:37px;background:#ecebef}.board-title{display:flex;align-items:center;gap:8px;font-size:17px;font-weight:800;white-space:nowrap}.board-title small{font-size:12px;font-weight:500;color:#585862;letter-spacing:0}.board-title .icon{width:13px;height:13px;color:#75737a}.toolbar-spacer{flex:1}.avatar-stack{display:flex;align-items:center;padding-left:9px;margin-right:5px;flex-shrink:0}.avatar{display:inline-grid;place-items:center;border-radius:50%;height:28px;width:28px;flex-shrink:0;background:var(--avatar,#8c7ccd);color:#fff;border:2px solid white;font-size:9px;font-weight:850;letter-spacing:-.5px;user-select:none}.avatar-stack .avatar{margin-left:-9px}.avatar-stack .avatar:first-child{margin-left:0}.avatar-profile{width:34px;height:34px;font-size:11px}.avatar-stack.compact .avatar{height:22px;width:22px;font-size:8px;border-width:1.5px;margin-left:-6px}.avatar-stack.compact{padding-left:6px}.btn{border:1px solid #e8e8ed;background:#fff;border-radius:9px;display:inline-flex;justify-content:center;align-items:center;gap:8px;padding:11px 14px;color:#222227;font-weight:750;white-space:nowrap}.btn:hover{background:#f7f7fb}.btn .icon{height:15px;width:15px}.btn-primary{color:white;background:#171719;border-color:#171719}.btn-primary:hover{background:#39383f}.btn-purple{background:#6836d4;color:#fff;border-color:#6836d4}.btn-purple:hover{background:#5825c5}.btn-danger{color:#cc4054;border-color:#f4cbd1;background:#fff}.btn-danger:hover{background:#fff0f3}.btn-sm{padding:8px 11px;font-size:11px}.toolbar>.btn{font-size:12px}.filter-host{position:relative}.filter-panel{position:absolute;top:calc(100% + 10px);right:0;background:#fff;z-index:9;width:245px;border:1px solid #efedf1;border-radius:13px;box-shadow:0 22px 50px #1d19382a;padding:16px}.filter-panel h4{font-size:12px;margin:0 0 13px}.filter-panel label{font-size:11px;font-weight:750;color:#5e5e69;display:block;margin:10px 0 5px}.filter-panel select{width:100%;padding:10px;border:1px solid var(--line);border-radius:8px;background:white}.filter-panel button{width:100%;margin-top:15px}.board-scroll{overflow-x:auto;padding:0 0 10px;min-height:calc(100% - 95px);scrollbar-width:thin}.kanban-board{display:grid;grid-template-columns:repeat(4,minmax(218px,1fr));gap:15px;align-items:start;min-width:912px}.kanban-col{background:#fdfdfd;border:1px solid #ecebee;border-radius:18px;padding:13px 10px 11px;min-height:390px;transition:background .16s,border-color .16s}.kanban-col.drag-over{background:#faf7ff;border:2px dashed #8c6ae7;padding:12px 9px 10px}.col-head{display:flex;align-items:center;padding:0 6px 11px;gap:7px;border-bottom:1px solid #f1f0f1;margin-bottom:13px;color:#1a1a21}.col-head .small-arrow{font-size:11px;font-weight:800}.col-head h3{margin:0;font-size:12px;font-weight:850;flex:1;white-space:nowrap}.col-count{font-size:10px;color:#a5a2ab}.col-button{border:0;background:transparent;color:#303037;display:grid;place-items:center;border-radius:5px;padding:3px}.col-button:hover{background:#eeeefa}.col-button>.icon{height:14px;width:14px}.col-body{display:flex;flex-direction:column;gap:9px}.task-card{border-radius:14px;padding:13px 11px 11px;background:#dbe7fb;box-shadow:0 2px 0 #fff inset,0 3px 11px #34334807;cursor:pointer;transition:transform .15s,box-shadow .15s;position:relative;min-width:0;color:#23578d}.task-card:hover{transform:translateY(-2px);box-shadow:0 8px 20px #67607919}.task-card.dragging{opacity:.5;transform:scale(.98)}.task-card.color-blue{background:linear-gradient(136deg,#d3e2fa,#e0e9fb);color:#285b99}.task-card.color-purple{background:linear-gradient(135deg,#e2d9ff,#dedbf6);color:#4d308e}.task-card.color-rose{background:linear-gradient(145deg,#f5c9cc,#ffdedc);color:#ad5060}.task-card.color-peach{background:linear-gradient(135deg,#ffead5,#ffe2c5);color:#a86616}.task-card.color-mint{background:linear-gradient(135deg,#b7f0dc,#d5f9e6);color:#14795b}.task-card.color-pink{background:linear-gradient(130deg,#f8d4f3,#fbe0f3);color:#ad4a9b}.task-card.color-cream{background:linear-gradient(135deg,#fff0d8,#fff5e8);color:#ad7a32}.task-card.color-lavender{background:linear-gradient(145deg,#e6dfff,#dfe2ff);color:#69549d}.task-card.color-cyan{background:linear-gradient(145deg,#b7eff9,#d0f4f8);color:#157e93}.task-card.color-salmon{background:linear-gradient(140deg,#ffe2db,#fce7e5);color:#aa6253}.task-top{display:flex;align-items:start;gap:5px;min-height:22px}.task-tags{display:flex;align-items:center;flex-wrap:wrap;gap:4px;flex:1}.tag{background:#ffffff88;border:1px solid #ffffff75;border-radius:5px;padding:3px 6px;font-size:9px;white-space:nowrap;color:inherit;font-weight:750}.task-menu{border:1px solid #ffffff68;background:#ffffff30;color:inherit;border-radius:6px;padding:3px;display:grid;place-items:center;opacity:.85}.task-menu:hover{background:#ffffff9c}.task-menu .icon{height:13px;width:13px}.task-title{font-size:12px;font-weight:850;line-height:1.3;margin:11px 0 7px;overflow-wrap:anywhere;letter-spacing:-.15px}.task-desc{margin:0 0 10px;font-size:9.5px;line-height:1.5;font-weight:550;color:inherit}.mini-checklist{padding:0;margin:9px 0;list-style:none;display:grid;gap:7px}.mini-checklist li{display:flex;align-items:flex-start;gap:6px;font-size:9.5px;font-weight:600}.mini-checklist .check-dot{height:13px;width:13px;border-radius:50%;border:1px solid currentColor;display:grid;place-items:center;flex-shrink:0}.mini-checklist .check-dot.checked{background:currentColor}.mini-checklist .check-dot.checked .icon{stroke:white;height:9px;width:9px;stroke-width:3}.progress-meta{display:flex;justify-content:space-between;align-items:center;font-size:9px;font-weight:700;margin-top:13px;margin-bottom:5px}.progress-meter{display:flex;gap:2px;width:100%}.progress-meter span{height:11px;background:#ffffff65;border-radius:50%;flex:1;min-width:0}.progress-meter span.filled{background:currentColor;opacity:.88}.task-bottom{display:flex;align-items:center;justify-content:space-between;margin-top:10px;gap:8px}.task-stats{display:flex;align-items:center;gap:4px}.task-stat{display:flex;align-items:center;gap:3px;font-size:9px;font-weight:700;border-radius:5px;border:1px solid #ffffff85;padding:4px 5px;background:#ffffff22}.task-stat .icon{width:11px;height:11px}.task-preview{background:#fff;padding:5px;border:1px solid #ffffffb8;border-radius:8px;height:112px;display:grid;grid-template-columns:36px 1fr;gap:4px;margin:10px 0 3px;box-shadow:0 3px 8px #ad853b1c}.preview-side{background:#f0eef6;border-radius:3px;display:flex;flex-direction:column;gap:5px;padding:9px 4px}.preview-side i{background:#d6d3e1;height:4px;border-radius:3px}.preview-main{display:grid;grid-template-columns:repeat(3,1fr);gap:4px}.preview-main>i{border-radius:3px;background:#e3e8fd}.preview-main>i:nth-child(2),.preview-main>i:nth-child(5){background:#ffe6d5}.preview-main>i:nth-child(3),.preview-main>i:nth-child(6){background:#f5dff3}.empty-col{min-height:140px;display:grid;place-items:center;text-align:center;color:#b1aebc;font-size:11px;border:1px dashed #e9e8ed;border-radius:11px;padding:20px 7px}.empty-col .icon{width:22px;height:22px;margin:0 auto 7px;display:block}
/* Other views */
.page-head{display:flex;align-items:center;gap:20px;justify-content:space-between;margin:1px 0 23px}.page-head h1{font-size:25px;letter-spacing:-1px;margin:0 0 4px;font-weight:850}.page-head p{color:#8b8b97;font-size:12px;margin:0}.section-card,.stat-card,.member-card,.note-card,.client-card{background:white;border:1px solid #ecebf0;border-radius:16px;padding:19px}.dashboard-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px}.stat-card{min-height:120px}.stat-card .stat-top{display:flex;justify-content:space-between;align-items:center;color:#858594;font-size:11px;font-weight:650}.stat-card .stat-icon{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:#f3efff;color:#7046ca}.stat-card strong{display:block;font-size:30px;letter-spacing:-1.3px;line-height:1;margin-top:15px}.stat-card small{display:block;color:#9996a0;margin-top:8px;font-size:10px}.analytics-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:16px}.section-card h2{font-size:15px;margin:0 0 16px;letter-spacing:-.35px}.section-card p{line-height:1.65}.status-bars{display:grid;gap:19px;padding-top:6px}.status-bar-head{display:flex;justify-content:space-between;margin-bottom:7px;font-size:12px;font-weight:650}.bar-track{height:11px;background:#f0eff4;border-radius:9px;overflow:hidden}.bar-fill{height:100%;border-radius:9px;background:#8665e0}.bar-fill.c2{background:#f1b969}.bar-fill.c3{background:#df8fc3}.bar-fill.c4{background:#6bc2b3}.donut-panel{display:flex;align-items:center;justify-content:center;gap:25px;min-height:210px}.donut{width:160px;height:160px;border-radius:50%;display:grid;place-items:center;position:relative;flex-shrink:0}.donut:before{content:'';position:absolute;inset:27px;background:white;border-radius:50%}.donut>span{position:relative;font-size:25px;font-weight:850}.legend{display:grid;gap:13px;font-size:11px}.legend span{display:flex;align-items:center;gap:8px}.legend i{width:9px;height:9px;border-radius:3px}.item-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.note-card{cursor:pointer;min-height:165px;transition:transform .15s}.note-card:hover,.client-card:hover{transform:translateY(-2px)}.note-card h3{font-size:14px;margin:0 0 12px}.note-card p{color:#676673;margin:0;white-space:pre-wrap;line-height:1.65;font-size:12px}.note-footer{display:flex;align-items:center;justify-content:space-between;font-size:10px;color:#9992a2;margin-top:22px}.note-card.color-cream{background:#fff7e9}.note-card.color-lavender{background:#f2effe}.note-card.color-mint{background:#e9fbf2}.note-card.color-blue{background:#eaf3ff}.note-card.color-pink{background:#fff0f7}.note-card.color-purple{background:#ede6ff}.section-card.table-wrap{overflow:auto;padding:0}.data-table{border-collapse:collapse;width:100%;min-width:580px;text-align:left}.data-table th{padding:16px;color:#898894;font-size:11px;font-weight:650;border-bottom:1px solid #eeedf0;background:#fbfbfc}.data-table td{padding:16px;border-bottom:1px solid #f1eff3;font-size:12px}.data-table tr:last-child td{border:0}.data-table td strong{display:block}.data-table td small{color:#94929d;display:block;margin-top:5px}.table-action{background:#f7f7fa;border:0;border-radius:7px;padding:8px;color:#6d6b75}.table-action:hover{background:#efebfa}.status-pill{display:inline-flex;gap:6px;align-items:center;border-radius:15px;padding:5px 10px;font-size:10px;font-weight:750;background:#eaf9f1;color:#23825c}.status-pill.draft,.status-pill.inactive{background:#f2f1f5;color:#777685}.status-pill.lead{background:#fff2de;color:#a66f1b}.members-list{display:grid;grid-template-columns:repeat(2,1fr);gap:13px}.member-card{display:flex;gap:13px;align-items:center}.member-card .avatar{width:46px;height:46px;font-size:14px}.member-card strong{display:block;font-size:13px}.member-card small{display:block;color:#9997a0;margin-top:3px}.member-card .btn{margin-left:auto}.clients-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.client-card{transition:transform .15s}.client-card .client-header{display:flex;justify-content:space-between;align-items:center}.client-card h3{margin:12px 0 3px}.client-card p{margin:0 0 12px;color:#85828c}.client-card a{color:#5b4ca2;font-size:11px;word-break:break-all}.client-initial{width:44px;height:44px;border-radius:14px;background:#ebe6fa;color:#6b4bca;display:grid;place-items:center;font-size:16px;font-weight:850}.activity-list{display:grid;gap:0}.activity-row{display:flex;gap:15px;padding:15px 0;border-bottom:1px solid #f0eff3}.activity-row:last-child{border:0}.activity-symbol{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;background:#f0ebff;color:#7650d0;flex-shrink:0}.activity-row strong{display:block;font-size:12px;margin-bottom:5px}.activity-row small{color:#9e9aa4;font-size:11px}.calendar-wrap{background:white;border:1px solid #ebeaf0;border-radius:15px;overflow:hidden}.calendar-weekdays,.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-weekdays span{padding:14px 10px;text-align:center;color:#85818f;font-size:11px;font-weight:750;border-bottom:1px solid #f1eff4}.day-cell{background:#fff;min-height:108px;border-right:1px solid #f0eff4;border-bottom:1px solid #f0eff4;padding:10px;cursor:pointer;min-width:0}.day-cell:nth-child(7n){border-right:0}.day-cell:hover{background:#faf8ff}.day-cell.other-month{background:#fbfbfc}.day-number{display:grid;place-items:center;width:25px;height:25px;font-size:12px;font-weight:700;color:#55525c;margin-bottom:6px}.day-cell.today .day-number{background:#7046d8;border-radius:50%;color:white}.day-cell.other-month .day-number{color:#c7c5cd}.calendar-task{background:#eee9fd;color:#6245af;padding:5px 7px;font-size:9px;font-weight:650;border-radius:5px;margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calendar-task.ct-done{background:#e2f6ef;color:#288b62}.calendar-controls{display:flex;align-items:center;gap:8px}.calendar-controls .btn{padding:8px}.calendar-controls strong{min-width:140px;text-align:center}.report-stats{margin-top:15px}.priority-row{display:flex;align-items:center;gap:13px;padding:14px 0;border-bottom:1px solid #eee}.priority-row:last-child{border:0}.priority-mark{height:9px;width:9px;border-radius:50%}.priority-row strong{min-width:65px}.priority-row .bar-track{flex:1}.priority-row>span:last-child{font-weight:750}.settings-row{display:flex;justify-content:space-between;align-items:center;padding:18px 0;border-bottom:1px solid #eee}.settings-row:last-child{border:0}.settings-row strong{display:block;margin-bottom:5px}.settings-row small{color:#908d99}.toggle{width:45px;height:26px;background:#d2cfda;border:0;border-radius:20px;padding:4px;text-align:left}.toggle:before{content:'';display:block;height:18px;width:18px;border-radius:50%;background:white;box-shadow:0 1px 4px #0002;transition:.2s}.toggle.on{background:#7352d8}.toggle.on:before{transform:translateX(19px)}.support-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.support-tile{padding:19px;background:#f8f7fb;border-radius:12px}.support-tile strong{display:flex;align-items:center;gap:8px;margin-bottom:8px}.support-tile p{margin:0;color:#787583;font-size:12px}.empty-state{padding:55px 20px;text-align:center;color:#97929f}.empty-state .icon{width:36px;height:36px;margin-bottom:10px}.empty-state strong{display:block;font-size:16px;color:#312f39;margin-bottom:6px}
/* Modals */
.modal-backdrop{position:fixed;inset:0;background:#18132389;display:flex;align-items:center;justify-content:center;padding:18px;z-index:60;backdrop-filter:blur(4px)}.modal{width:min(100%,590px);max-height:min(92vh,900px);background:white;border-radius:20px;box-shadow:0 32px 100px #11112440;overflow:auto;animation:pop .16s ease-out}@keyframes pop{from{transform:translateY(8px);opacity:.6}to{transform:translateY(0);opacity:1}}.modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:23px 25px 17px;border-bottom:1px solid #f1f0f3}.modal-header h2{margin:0;font-size:19px;letter-spacing:-.5px}.modal-header p{margin:5px 0 0;color:#9b98a2;font-size:11px}.modal-body{padding:20px 25px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.form-field{margin-bottom:15px}.form-field label{display:block;color:#4c4a54;font-size:11px;font-weight:800;margin-bottom:7px}.form-field input,.form-field textarea,.form-field select{width:100%;padding:11px 12px;border:1px solid #e9e7ee;border-radius:9px;outline:0;background:#fff;color:#26252c;font-size:12px}.form-field input:focus,.form-field textarea:focus,.form-field select:focus{border-color:#8b71df;box-shadow:0 0 0 3px #eee8ff}.form-field textarea{resize:vertical;min-height:78px;line-height:1.5}.form-field small{display:block;color:#9e9aa5;margin-top:5px}.colors-row{display:flex;gap:9px;flex-wrap:wrap}.color-option{border:3px solid #fff;width:28px;height:28px;border-radius:50%;box-shadow:0 0 0 1px #e9e7ef;display:grid;place-items:center}.color-option.selected{box-shadow:0 0 0 2px #6c47d1}.color-option>.icon{width:13px;height:13px;color:#3a3246;stroke-width:3}.member-options{display:flex;flex-wrap:wrap;gap:7px}.member-option{display:flex;align-items:center;gap:6px;padding:7px 9px;border:1px solid #e9e7ef;border-radius:9px;font-size:10px;cursor:pointer;user-select:none}.member-option:has(input:checked){background:#f1edff;border-color:#bdacef}.member-option input{accent-color:#6c47d1}.member-option .avatar{width:23px;height:23px}.modal-footer{border-top:1px solid #f1f0f3;padding:17px 25px;display:flex;justify-content:flex-end;gap:9px}.modal-footer .delete-left{margin-right:auto}.toast-stack{position:fixed;bottom:22px;right:22px;display:grid;gap:9px;z-index:100}.toast{border-radius:10px;background:#22212b;color:white;padding:13px 18px;box-shadow:0 12px 32px #0002;font-size:12px;max-width:350px;animation:pop .2s ease}.toast.error{background:#bd3c54}.mobile-overlay{display:none}body.modal-open{overflow:hidden}.quick-empty{font-size:12px;color:#a49eaa;padding:20px}
body.compact .task-card{padding:10px}body.compact .kanban-board{gap:10px}body.compact .kanban-col{padding:10px 8px}
@media(max-width:1250px){.shell{width:calc(100% - 36px);height:calc(100vh - 50px);min-height:620px;margin:25px auto}.sidebar{width:208px;flex-basis:208px}.kanban-board{min-width:870px}.toolbar{gap:9px}.date-block{width:150px}.toolbar>.btn{padding:10px}.avatar-stack:not(.compact) .avatar{width:25px;height:25px}}
@media(max-width:950px){.shell{width:100%;height:100dvh;min-height:0;margin:0;border-radius:0;border:0}.sidebar{width:230px;flex-basis:230px}.main{padding:17px}.toolbar{flex-wrap:wrap}.toolbar-spacer{flex-basis:15px}.kanban-board{min-width:910px}.dashboard-grid{grid-template-columns:repeat(2,1fr)}.item-grid,.clients-grid{grid-template-columns:repeat(2,1fr)}.topbar{padding:0 17px;gap:12px}.welcome{min-width:140px}}
@media(max-width:720px){.sidebar{position:fixed;top:0;bottom:0;left:0;z-index:40;transform:translateX(-102%);box-shadow:15px 0 40px #1111;transition:transform .22s}.sidebar.open{transform:translateX(0)}.mobile-overlay.visible{display:block;position:fixed;inset:0;background:#18131d77;z-index:35}.mobile-menu{display:grid;margin-right:8px}.topbar{height:66px;gap:8px;padding:0 13px}.welcome{min-width:auto}.welcome span{display:none}.search-wrap{height:36px;flex:1}.keyboard-hint{display:none}.top-actions{gap:3px}.top-actions .round-btn:first-child{display:none}.main{padding:14px 11px}.toolbar{padding:12px;min-height:62px;margin-bottom:12px;gap:9px}.date-block{width:auto;flex:1}.date-block strong{font-size:15px}.toolbar-separator,.board-title,.toolbar .avatar-stack{display:none}.toolbar-spacer{display:none}.toolbar>.btn,.filter-host>.btn{padding:9px 10px;font-size:11px}.board-scroll{overflow-x:auto;overscroll-behavior-x:contain}.kanban-board{min-width:870px;grid-template-columns:repeat(4,210px);gap:10px}.page-head{gap:10px;align-items:flex-start}.page-head h1{font-size:21px}.page-head p{font-size:11px}.page-head .btn{padding:10px}.analytics-grid{grid-template-columns:1fr}.dashboard-grid{gap:9px}.stat-card{padding:14px}.stat-card strong{font-size:26px}.item-grid,.clients-grid,.members-list,.support-grid{grid-template-columns:1fr}.calendar-weekdays span{padding:10px 2px}.day-cell{min-height:68px;padding:5px}.day-number{font-size:10px;width:22px;height:22px}.calendar-task{padding:4px;font-size:8px}.modal-header,.modal-body,.modal-footer{padding-left:18px;padding-right:18px}.form-grid{grid-template-columns:1fr;gap:0}.topbar .search-wrap input{font-size:11px}}
@media(max-width:370px){.top-actions{display:none}.toolbar .btn .icon{display:none}.date-block small{font-size:9px}.calendar-controls strong{min-width:105px;font-size:11px}}

/* --------------------------------------------------------------
   Full-viewport workspace + pastel Timeline task planner (v2)
   -------------------------------------------------------------- */
html,body{width:100%;height:100%;min-height:100%;overflow:hidden}
body{background:#fff}
.shell,.shell#shell{width:100%;max-width:none;height:100vh;height:100dvh;min-height:0;margin:0;border:0;border-radius:0;box-shadow:none}
.workspace{min-height:0}
.main.tasks-view{display:flex;flex-direction:column;overflow:hidden;padding:23px 23px 18px;background:linear-gradient(140deg,#fff 65%,#fffafc 100%)}
.timeline-page{min-height:0;height:100%;display:flex;flex-direction:column;gap:0}
.timeline-page-title{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:0 0 17px}
.timeline-page-title h1{margin:0 0 4px;font-size:25px;letter-spacing:-1px;font-weight:850;display:flex;align-items:center;gap:10px}
.timeline-page-title p{margin:0;color:#92919d;font-size:11.5px}
.page-count{font-size:11px;letter-spacing:0;color:#754ad0;background:#f1ecff;padding:4px 8px;border-radius:7px;font-weight:800}
.timeline-page-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.timeline-page-actions .btn{padding:10px 13px}
.timeline-layout{display:inline-flex;align-items:center;padding:3px;background:#f4f2f8;border:1px solid #ece9f0;border-radius:10px;gap:2px}
.layout-btn{background:transparent;border:0;display:inline-flex;align-items:center;gap:6px;border-radius:7px;padding:7px 12px;color:#898593;font-weight:750;font-size:11px;white-space:nowrap}
.layout-btn.active{background:white;box-shadow:0 2px 8px #201a2912;color:#5e37b8}
.layout-btn .icon{width:14px;height:14px}
.timeline-tabs{display:flex;gap:20px;border-bottom:1px solid #eeecf0;flex:0 0 auto;margin-bottom:16px;overflow:auto hidden;scrollbar-width:none}
.timeline-tabs::-webkit-scrollbar{display:none}
.timeline-tab{padding:10px 1px 12px;border:0;border-bottom:2px solid transparent;background:transparent;color:#8d8995;font-size:12px;font-weight:700;display:flex;gap:7px;align-items:center;white-space:nowrap}
.timeline-tab span{font-size:10px;color:#aba4b4;background:#f4f2f6;padding:2px 6px;border-radius:5px}
.timeline-tab:hover{color:#6f43cc}
.timeline-tab.active{color:#6639d0;border-bottom-color:#7754e6}
.timeline-tab.active span{background:#f0ebff;color:#7547d0}
.timeline-tools{display:flex;align-items:center;gap:11px;flex:0 0 auto;margin-bottom:15px;min-height:39px}
.timeline-quicksearch{display:flex;align-items:center;gap:8px;background:white;border:1px solid #ecebef;border-radius:9px;padding:0 11px;height:38px;width:260px;max-width:100%}
.timeline-quicksearch .icon{height:15px;width:15px;color:#aaa4b3}
.timeline-quicksearch input{background:transparent;border:0;outline:0;min-width:0;flex:1;color:#353039;font-size:11px}
.timeline-quicksearch input::placeholder{color:#aaa4b2}
.timeline-team{display:flex;gap:10px;align-items:center;color:#9a95a2;font-size:11px;white-space:nowrap;margin-left:5px}
.timeline-team .avatar-stack{margin-right:0}
.timeline-grow{flex:1}
.timeline-count-label{font-size:10.5px;color:#9e9aa4;white-space:nowrap}
.timeline-tools .btn{padding:9px 12px;font-size:11px}
.timeline-panel{display:flex;flex:1;min-height:0;flex-direction:column;border:1px solid #ebe9f1;border-radius:16px;background:#fff;overflow:hidden;box-shadow:0 8px 32px #53466c08}
.timeline-controlbar{display:flex;align-items:center;gap:22px;padding:13px 15px;background:linear-gradient(90deg,#fff 60%,#fffcff);border-bottom:1px solid #efedf3;flex-shrink:0;min-height:66px}
.timeline-period{display:flex;gap:10px;align-items:center;min-width:230px}
.timeline-calendar-icon{height:35px;width:35px;background:#f3edff;border-radius:10px;color:#713ed3;display:grid;place-items:center}
.timeline-calendar-icon .icon{height:16px;width:16px}
.timeline-period strong{display:block;color:#302d38;font-size:12px;letter-spacing:-.2px}
.timeline-period small{display:block;font-size:10px;color:#a29cab;margin-top:4px}
.timeline-legend{display:flex;align-items:center;gap:16px;font-size:10px;font-weight:700;color:#9691a0}
.timeline-legend>span{display:flex;align-items:center;gap:6px;white-space:nowrap}
.legend-dot{display:inline-block;height:7px;width:7px;border-radius:50%;background:#8563e9}
.legend-dot.dot-done{background:#48c69a}
.timeline-nav{display:flex;align-items:center;gap:5px;margin-left:auto}
.timeline-nav select{color:#66616f;border:1px solid #ebe9ed;border-radius:8px;background:#fff;padding:8px 11px;font-size:11px;font-weight:750;min-height:32px;margin-right:7px;cursor:pointer}
.time-nav-btn{border:1px solid #eceaf0;color:#5e5a65;background:white;border-radius:8px;display:grid;place-items:center;height:33px;min-width:33px;font-size:11px;font-weight:750}
.time-nav-btn:hover{background:#f6f2ff;color:#6739c7}
.time-nav-btn .icon{width:14px;height:14px}
.time-nav-btn.timeline-today{padding:0 12px}
.timeline-scroll{flex:1;overflow:auto;min-height:0;scrollbar-color:#d9d4e3 #fbfafc;scrollbar-width:thin;overscroll-behavior-x:contain;position:relative}
.timeline-grid{min-width:100%;min-height:100%;background:white}
.timeline-grid-head,.timeline-task-row{display:grid;grid-template-columns:280px minmax(0,1fr)}
.timeline-grid-head{height:68px;position:sticky;top:0;z-index:10;background:#fefcfe;border-bottom:1px solid #eeeaf1}
.timeline-left-heading{display:flex;position:sticky;left:0;align-items:center;gap:10px;padding:0 18px;background:#fefcfe;border-right:1px solid #efedf3;z-index:15;color:#77717e;font-size:11px;font-weight:800}
.timeline-left-heading .icon{width:15px;height:15px;color:#9c8cb7}
.timeline-left-heading span{display:flex;align-items:center;gap:7px}
.timeline-left-heading em{font-size:10px;color:#a99bb9;font-style:normal;background:#f3eff9;border-radius:6px;padding:3px 7px}
.timeline-calendar-head{display:flex;min-width:0;background:#fefcfe}
.timeline-day{flex:0 0 auto;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;border-right:1px solid #f0eef4;color:#a6a0ad;font-size:10px}
.timeline-day strong{display:grid;place-items:center;min-width:25px;height:25px;padding:0 5px;color:#625e68;font-size:11px;border-radius:7px}
.timeline-day.is-today span{color:#6943ca;font-weight:800}
.timeline-day.is-today strong{background:#7046d7;color:white}
.timeline-task-row{min-height:92px;border-bottom:1px solid #f1eef3}
.timeline-task-row:last-child{border-bottom:1px solid #f1eef3}
.timeline-task-row:hover .timeline-task-info{background:#faf8ff}
.timeline-task-info{display:flex;align-items:center;gap:10px;position:sticky;left:0;z-index:6;padding:12px 12px 12px 17px;border-right:1px solid #eeebf2;background:white;cursor:pointer;min-width:0}
.timeline-task-icon{height:34px;width:34px;flex:0 0 34px;display:grid;place-items:center;border-radius:10px;background:#d8e5f9;color:#3766a0}
.timeline-task-icon .icon{height:16px;width:16px}
.timeline-task-icon.color-blue{background:#dce8fd;color:#386cbe}.timeline-task-icon.color-purple{background:#e7deff;color:#7150d1}.timeline-task-icon.color-rose{background:#fbe3e9;color:#d96d83}.timeline-task-icon.color-peach{background:#ffedda;color:#ca8a34}.timeline-task-icon.color-mint{background:#d5f9e8;color:#2a9c74}.timeline-task-icon.color-pink{background:#f9e2f2;color:#bd71ac}.timeline-task-icon.color-cream{background:#fff0d9;color:#b78a47}.timeline-task-icon.color-lavender{background:#e9e5ff;color:#7e68c1}.timeline-task-icon.color-cyan{background:#dcf7fb;color:#1a9bad}.timeline-task-icon.color-salmon{background:#ffe4dc;color:#cd7862}
.timeline-task-copy{min-width:0;flex:1;display:flex;flex-direction:column;gap:7px}
.timeline-task-copy strong{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;color:#3c3542;font-size:11px;line-height:1.2}
.timeline-task-copy small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#aaa4b0;font-size:9.5px}
.timeline-priority{width:7px;height:7px;border-radius:50%;background:#85bdaa;display:inline-block;margin-right:5px}
.timeline-priority.priority-high{background:#f29ba2}.timeline-priority.priority-medium{background:#e8b46e}
.timeline-meta-sep{color:#d2cdd6;padding:0 3px}
.timeline-task-edit{visibility:hidden;color:#927bd0}
.timeline-task-edit .icon{height:14px;width:14px}
.timeline-task-info:hover .timeline-task-edit{visibility:visible}
.timeline-track{height:92px;min-width:0;position:relative;background:repeating-linear-gradient(to right,#fff 0,#fff calc(var(--timeline-unit) - 1px),#efedf3 calc(var(--timeline-unit) - 1px),#efedf3 var(--timeline-unit));}
.timeline-task-row:nth-child(even) .timeline-track{background:repeating-linear-gradient(to right,#fdfcff 0,#fdfcff calc(var(--timeline-unit) - 1px),#efedf3 calc(var(--timeline-unit) - 1px),#efedf3 var(--timeline-unit))}
.timeline-today-line{position:absolute;top:0;bottom:0;border-left:1.5px solid #8962e2;z-index:2;pointer-events:none}
.timeline-today-line i{position:absolute;top:-1px;left:-4px;background:#8962e2;width:8px;height:8px;border-radius:50%}
.timeline-bar{--tint:#e1e5ff;--strong:#8666e9;--txt:#6d50b7;position:absolute;z-index:4;top:19px;height:54px;display:flex;align-items:center;gap:5px;padding:6px 8px;border:1px solid #ffffffb3;border-radius:11px;background:var(--tint);color:var(--txt);box-shadow:0 3px 12px #493c6912;cursor:pointer;overflow:hidden;min-width:14px;transition:box-shadow .15s,transform .15s}
.timeline-bar:hover{transform:translateY(-2px);box-shadow:0 7px 21px #55427b22;z-index:8}
.timeline-bar.color-blue{--tint:#e0ebff;--strong:#619af2;--txt:#3e73bd}.timeline-bar.color-purple{--tint:#e9dfff;--strong:#9158f1;--txt:#744ec0}.timeline-bar.color-rose{--tint:#ffe2e7;--strong:#eb8393;--txt:#b65d70}.timeline-bar.color-peach{--tint:#fff0d8;--strong:#f0a038;--txt:#b17b31}.timeline-bar.color-mint{--tint:#ddf8e9;--strong:#39bf8d;--txt:#188968}.timeline-bar.color-pink{--tint:#fce2f4;--strong:#de8bcf;--txt:#a95d99}.timeline-bar.color-cream{--tint:#fff2dd;--strong:#e4b365;--txt:#a27b41}.timeline-bar.color-lavender{--tint:#e8e5ff;--strong:#8e75e7;--txt:#6556ad}.timeline-bar.color-cyan{--tint:#ddf8fc;--strong:#45bfd5;--txt:#1b8093}.timeline-bar.color-salmon{--tint:#ffe7e3;--strong:#e99a8b;--txt:#aa6159}
.timeline-bar-label{min-width:54px;max-width:90px;display:flex;flex-direction:column;justify-content:center;gap:4px;overflow:hidden}
.timeline-ticket{font-size:10px;font-weight:850;white-space:nowrap}
.timeline-bar-description{font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;opacity:.78}
.timeline-progress-track{height:24px;min-width:40px;flex:1;position:relative;background:#ffffffa6;box-shadow:inset 0 0 0 1px #ffffff88;border-radius:6px;overflow:hidden}
.timeline-progress-fill{position:absolute;inset:0 auto 0 0;background:var(--strong);border-radius:6px;max-width:100%;min-width:0}
.timeline-percent{position:absolute;inset:0;display:grid;place-items:center;color:#403750;font-size:10px;font-weight:850;text-shadow:0 1px 1px #ffffff55}
.timeline-status{min-width:0;width:89px;max-width:33%;height:26px;padding:3px 4px;background:#ffffff90;border:1px solid #ffffffa6;border-radius:6px;color:var(--txt);font-size:10px;font-weight:800;cursor:pointer;text-overflow:ellipsis;outline-offset:-2px}
.timeline-bar.is-small .timeline-bar-label{display:none}.timeline-bar.is-tiny .timeline-bar-label,.timeline-bar.is-tiny .timeline-status{display:none}
.timeline-empty{height:220px;display:flex;justify-content:center;align-items:center;gap:13px;flex-direction:column;color:#9690a0;font-size:12px}
.timeline-empty .icon{color:#a58cc5;width:23px;height:23px}
.timeline-footer{border-top:1px solid #f0edf2;background:#fefcff;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 16px;color:#a39cae;font-size:10px;flex:0 0 auto}
.timeline-footer span{display:flex;gap:6px;align-items:center}.timeline-footer .icon{height:13px;width:13px}
body.compact .timeline-task-row,body.compact .timeline-track{height:72px;min-height:72px}body.compact .timeline-bar{top:10px}
@media(max-width:1250px){.timeline-legend{display:none}.timeline-controlbar{gap:10px}.timeline-period{min-width:195px}}
@media(max-width:950px){.main.tasks-view{padding:18px}.timeline-team{display:none}.timeline-grid-head,.timeline-task-row{grid-template-columns:240px minmax(0,1fr)}.timeline-grid{width:calc(100% - 40px)}.timeline-left-heading,.timeline-task-info{min-width:240px}.timeline-quicksearch{width:210px}}
@media(max-width:720px){.main.tasks-view{padding:15px 11px 12px}.timeline-page-title{align-items:flex-start;gap:12px}.timeline-page-title h1{font-size:21px}.timeline-page-title p{font-size:10px;max-width:230px;line-height:1.5}.timeline-page-actions{gap:5px;flex-direction:column-reverse;align-items:flex-end}.timeline-page-actions .btn{padding:8px 9px;font-size:10px}.layout-btn{padding:6px 7px;font-size:9px;gap:3px}.layout-btn .icon{width:12px;height:12px}.timeline-tabs{margin-bottom:10px;gap:15px}.timeline-tab{font-size:11px;padding:9px 0}.timeline-tools{gap:7px;margin-bottom:10px}.timeline-quicksearch{width:100%;flex:1}.timeline-count-label{display:none}.timeline-controlbar{padding:10px;flex-wrap:wrap;gap:9px}.timeline-period{min-width:0;flex:1}.timeline-period strong{font-size:11px}.timeline-calendar-icon{height:30px;width:30px}.timeline-period small{font-size:9px}.timeline-nav select{margin-right:0;padding:7px 4px}.time-nav-btn{height:30px;min-width:28px}.time-nav-btn.timeline-today{padding:0 7px}.timeline-grid-head,.timeline-task-row{grid-template-columns:170px minmax(0,1fr)}.timeline-left-heading,.timeline-task-info{min-width:170px}.timeline-task-info{padding:9px 6px 9px 9px;gap:6px}.timeline-task-icon{height:27px;width:27px;flex-basis:27px;border-radius:8px}.timeline-task-icon .icon{height:13px;width:13px}.timeline-task-copy strong{font-size:9px}.timeline-task-copy small{font-size:8px}.timeline-footer-right{display:none}.timeline-footer{font-size:9px}.timeline-scroll{scrollbar-width:thin}}
@media(max-width:410px){.timeline-page-title p{max-width:180px}.timeline-layout{padding:2px}.layout-btn{font-size:0;gap:0;padding:7px 9px}.layout-btn .icon{width:14px;height:14px}.timeline-page-actions .btn{padding:7px 8px}.timeline-tools .btn{padding:9px}.timeline-day{font-size:9px}}

/* v4: project workspaces, rich tasks and secure users; preserve the pastel Weihu theme */
.project-tabs{align-items:stretch;gap:17px;min-height:43px}
.project-add{display:inline-flex;align-items:center;gap:5px;flex-shrink:0;margin-left:auto;align-self:center;padding:7px 11px;border:1px dashed #cbbbea;border-radius:9px;background:#faf7ff;color:#6741bc;font-weight:800;font-size:10px}
.project-add:hover{background:#f0e9ff}.project-add .icon{width:13px;height:13px}
.timeline-tools{position:relative;z-index:25;overflow:visible}.timeline-panel{position:relative;z-index:1}.timeline-tools .filter-host{z-index:40}.filter-host .filter-panel{z-index:999;box-shadow:0 18px 50px #20172e30}.toolbar{position:relative;z-index:20}
.task-card-cover{height:112px;overflow:hidden;margin:-13px -11px 12px;border-radius:13px 13px 8px 8px;background:#ece5fb}.task-card-cover img{width:100%;height:100%;object-fit:cover;display:block}
.task-check-progress{width:100%;height:7px;border-radius:20px;background:#ffffffa0;overflow:hidden;margin:4px 0 10px;border:1px solid #ffffff3d}.task-check-progress>span{display:block;height:100%;background:currentColor;opacity:.8;border-radius:20px;transition:width .2s ease}.task-check-progress.large{height:10px;background:#f1edfa;color:#7250d7;border:0;margin:10px 0}.task-check-progress.large>span{background:#855ae1}
.deadline-info{display:flex;justify-content:space-between;align-items:center;gap:5px;margin-top:8px;font-size:9px;font-weight:750;color:inherit}.deadline-info span{display:inline-flex;align-items:center;gap:4px}.deadline-info .icon{height:12px;width:12px}.deadline-info strong{font-size:9px;white-space:nowrap}.deadline-meter{height:5px;width:100%;border-radius:10px;background:#ffffffa3;overflow:hidden;margin-top:5px}.deadline-meter>span{height:100%;display:block;border-radius:10px;background:#7da1e9}.deadline-meter.urgent>span{background:#e5a338}.deadline-meter.overdue>span{background:#d9556d}.deadline-meter.complete>span{background:#47b68b}
.field-with-action{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:9px}.field-with-action label{margin:0}.checklist-live{color:#7651cb;font-size:10px;margin-left:6px}.checklist-editor{display:flex;flex-direction:column;gap:7px}.checklist-edit-row{display:flex;align-items:center;gap:9px;padding:5px 8px;border:1px solid #eeebf3;border-radius:10px;background:#fdfcff}.checklist-edit-row input[type=checkbox]{width:17px;height:17px;min-width:17px;accent-color:#7449d8;cursor:pointer}.checklist-edit-row .checklist-text{flex:1;width:100%;padding:7px 4px;border:0;background:transparent;outline:0;box-shadow:none}.checklist-edit-row:has(input[type=checkbox]:checked) .checklist-text{color:#9891a2;text-decoration:line-through}.checklist-edit-row button,.assigned-chip button,.attached-file button{border:0;background:transparent;display:grid;place-items:center;color:#aaa2b2;padding:4px;border-radius:6px}.checklist-edit-row button:hover,.assigned-chip button:hover,.attached-file button:hover{color:#ba526c;background:#fff0f4}.checklist-edit-row button .icon,.assigned-chip button .icon,.attached-file button .icon{width:14px;height:14px}
.assign-layout{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.assigned-members{display:flex;flex-wrap:wrap;gap:7px}.assigned-chip{display:inline-flex;align-items:center;gap:6px;border-radius:19px;padding:3px 5px 3px 3px;background:#f4f0ff;border:1px solid #e5dcfa;font-size:10px;font-weight:750;color:#51416f}.assigned-chip .avatar{height:23px;width:23px}.assign-plus{width:30px;height:30px;display:grid;place-items:center;border-radius:50%;border:1px dashed #b8a5e9;color:#7549cc;background:#f8f5ff}.assign-plus:hover{background:#ebe2ff}.assign-plus .icon{width:16px;height:16px}.assign-placeholder{color:#b3aebc;font-size:11px}.assign-add-host{position:relative}.assign-menu{position:absolute;left:0;top:calc(100% + 7px);background:white;border:1px solid #ebe7f0;box-shadow:0 15px 35px #281b4130;border-radius:12px;padding:6px;min-width:220px;max-height:230px;overflow:auto;z-index:8}.assign-menu[hidden]{display:none}.assign-menu button{display:flex;align-items:center;gap:8px;border:0;background:transparent;padding:7px 8px;border-radius:7px;width:100%;text-align:left;font-size:11px}.assign-menu button:hover{background:#f5f0ff}.assign-menu button span:nth-child(2){flex:1}.assign-menu button .avatar{width:26px;height:26px}.assign-menu button .icon{width:13px;height:13px}
.task-edit-body{padding-top:22px}.cover-preview{border-radius:12px;overflow:hidden;background:#f4f0fa;margin-bottom:10px;position:relative;min-height:90px}.cover-preview img{width:100%;max-height:180px;display:block;object-fit:cover}.cover-remove{display:inline-flex;align-items:center;gap:5px;position:absolute;right:10px;bottom:10px;border:0;border-radius:8px;padding:7px 10px;background:#fff;color:#b33a57;font-size:10px;font-weight:800;box-shadow:0 3px 16px #0002}.cover-remove .icon{height:13px;width:13px}.file-list{display:flex;flex-direction:column;gap:6px;margin:0 0 10px}.attached-file{display:flex;align-items:center;gap:8px;padding:9px 10px;border:1px solid #ece7f3;border-radius:9px;font-size:11px;min-width:0;background:#fdfcff}.attached-file>.icon{width:14px;height:14px;color:#8358cf}.attached-file a{min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#6b42be;text-decoration:none}.attached-file a:hover{text-decoration:underline}.attached-file small{color:#aba5b1;flex-shrink:0;margin:0!important}.attached-file button{flex-shrink:0}.modal:has(.task-edit-body){width:min(100%,690px)}.inline-check{display:inline-flex!important;align-items:center;gap:9px;cursor:pointer}.inline-check input{width:17px!important;height:17px;accent-color:#7750d1}
.account-panel{width:min(100%,590px)}.account-panel .btn{margin-right:8px}.account-panel form{max-width:500px}.members-list{gap:12px}
@media(max-width:720px){.project-tabs{gap:14px;margin-bottom:12px}.project-add{padding:6px 8px;position:sticky;right:0;background:#faf7ff}.timeline-tools{z-index:35}.timeline-tools .filter-panel{right:0;top:calc(100% + 7px);width:min(265px,calc(100vw - 22px))}.modal:has(.task-edit-body){max-height:94dvh}.task-card-cover{height:100px}}
/* Explicit font stack ensures the app stays sans-serif even if online fonts cannot load. */
html,body,button,input,select,textarea{font-family:'DM Sans','Segoe UI',Arial,Helvetica,sans-serif}

/* Livium Management v3 — polished controls for folders, forms, permissions and calendar */
#brandName{display:inline-block;max-width:145px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:850;letter-spacing:-.4px;font-size:15px}
.nav-item[hidden]{display:none!important}
.avatar{overflow:hidden}.avatar img{display:block;width:100%;height:100%;object-fit:cover;border-radius:inherit}
.account-avatar-block{display:flex;align-items:center;gap:24px;padding:2px 0 20px;border-bottom:1px solid #eceaf2;margin-bottom:22px}
.account-avatar-block>.avatar{height:84px;width:84px;min-width:84px;font-size:26px}.account-avatar-block form{display:flex;align-items:flex-start;gap:8px;flex-direction:column;max-width:320px}.account-avatar-block form label{font-size:11px;color:#766985;font-weight:750}.account-avatar-block input{max-width:250px;font-size:11px}
.project-tabs{display:flex;align-items:center;gap:7px;overflow-x:auto;overflow-y:hidden;padding-bottom:7px;scrollbar-width:thin}
.project-tab-wrap{display:flex;align-items:center;gap:2px;flex-shrink:0;background:#f3eefc;border-radius:10px;border:1px solid transparent;transition:box-shadow .12s,background .12s;cursor:grab}
.project-tab-wrap .timeline-tab{white-space:nowrap;margin:0;padding:10px 13px;border-bottom:0!important;border-radius:10px}
.project-tab-wrap:has(.timeline-tab.active){background:#ece3ff;border-color:#d6c6f3}
.project-tab-wrap.dragging-project{opacity:.36;transform:scale(.97)}.project-tab-wrap.drop-target{box-shadow:0 0 0 2px #875be2;background:#e9d9ff}
.project-delete{display:grid;place-items:center;width:24px;height:26px;border:0;background:transparent;color:#a493c5;border-radius:6px;margin-right:5px}.project-delete:hover{background:#fbdde4;color:#ae4569}.project-delete .icon{width:12px;height:12px}
.project-drag-hint{font-size:10px;color:#a39aae;margin:-5px 0 10px;padding-left:3px}
.timeline-cover-thumbnail{width:64px;height:54px;position:absolute;top:-1px;left:-68px;border-radius:9px;object-fit:cover;box-shadow:0 3px 12px #55407727;border:2px solid white;background:#eee4ff}
.timeline-bar.has-cover{overflow:visible;margin-left:68px;width:calc(var(--timeline-width, 100%) - 68px)}
.timeline-bar .timeline-progress-track,.timeline-bar .timeline-bar-label,.timeline-bar .timeline-status{min-width:0}
.timeline-bar.has-cover.is-tiny .timeline-cover-thumbnail{width:40px;left:-43px}.timeline-bar.has-cover.is-small .timeline-cover-thumbnail{width:48px;left:-51px}
.schedule-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;margin-bottom:16px}.schedule-toolbar p{margin:0;color:#9993a5;font-size:11px}
.schedule-event-pill{display:block;border:0;text-align:left;width:100%;cursor:pointer;background:#e3dafa;color:#6b42af;font-size:11px;padding:5px 7px;margin:4px 0;border-radius:6px}
.schedule-event-pill:hover,.calendar-task:hover{filter:brightness(.96);transform:translateY(-1px)}
.day-cell .calendar-task{display:block;border:0;width:100%;text-align:left;margin:4px 0;cursor:pointer;overflow:hidden;max-width:100%;text-overflow:ellipsis;white-space:nowrap;min-height:25px;padding:5px 6px;border-radius:6px;color:#6845ae;background:#eee7ff}
.day-cell .calendar-task.color-blue{background:#dcebff;color:#3866a9}.day-cell .calendar-task.color-mint{background:#daf5ea;color:#27816a}.day-cell .calendar-task.color-peach{background:#fff0dc;color:#aa7131}.day-cell .calendar-task.color-rose{background:#ffe0e5;color:#aa5067}
.note-card .note-footer{gap:8px}.note-card .note-footer>span{max-width:93%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.color-picker-grid{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:12px}.note-color-btn{border:2px solid transparent;width:66px;height:57px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:2px;border-radius:11px;box-shadow:inset 0 0 0 1px #ffffff88;font-size:9px;font-weight:800;color:#59436b;transition:transform .15s}
.note-color-btn:hover{transform:translateY(-2px)}.note-color-btn.selected{border-color:#6b41c0;box-shadow:0 0 0 2px #dfd1ff}.note-color-btn .icon{width:14px;height:14px}.color-manager{display:flex;gap:8px;flex-wrap:wrap}
.settings-grid{display:grid;grid-template-columns:minmax(340px,1.1fr) minmax(320px,1fr);gap:18px;align-items:start}.settings-grid .section-card h2{font-size:16px;margin:0 0 18px}.settings-grid hr{margin:20px 0;border:0;border-top:1px solid #e8e4f1}
.muted{font-size:12px;color:#93899f;line-height:1.65}.permission-table{margin:16px 0 20px;border:1px solid #eee9f6;border-radius:11px;overflow:hidden}.permission-row{display:grid;grid-template-columns:1fr 70px 70px;align-items:center;gap:6px;padding:10px 12px;border-bottom:1px solid #f3eff8;font-size:11px}.permission-row:last-child{border:0}.permission-row:nth-child(odd){background:#fdfbff}.permission-row label{display:grid;place-items:center}.permission-row input{height:17px;width:17px;accent-color:#8156d4}.permission-header{background:#eae2fa!important;color:#62479f;font-size:11px}
.forms-manager-hero{display:flex;align-items:center;gap:16px;padding:18px 22px;background:linear-gradient(110deg,#f1e9ff,#fdf6ff);border:1px solid #e8ddfa;border-radius:15px;margin-bottom:22px}.forms-manager-hero>.icon{width:28px;height:28px;color:#875de0}.forms-manager-hero strong,.forms-manager-hero span{display:block}.forms-manager-hero span{font-size:11px;color:#81768f;margin-top:4px}.forms-manager-hero a{color:#6941bd;font-weight:750}
.forms-manager-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(245px,1fr));gap:16px}.form-manager-card{background:#fff;border:1px solid #ebe6f2;border-radius:17px;padding:20px;min-height:235px;display:flex;flex-direction:column;align-items:flex-start;box-shadow:0 6px 20px #322d4507}.form-card-icon{background:#efe4ff;color:#8051d7;border-radius:12px;display:grid;place-items:center;width:43px;height:43px}.form-state{font-size:10px;font-weight:800;border-radius:22px;padding:4px 8px;background:#f3f1f6;color:#897f94;margin-top:12px}.form-state.published{background:#dbf8e7;color:#298362}.form-manager-card h3{font-size:15px;line-height:1.35;margin:11px 0 7px}.form-manager-card p{color:#81798d;font-size:11px;line-height:1.5;margin:0 0 12px}.form-manager-card>small{color:#a098ac;font-size:10px;line-height:1.5}.form-card-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:auto;padding-top:20px}.form-card-actions .btn{font-size:10px;padding:7px 9px;text-decoration:none}
.modal:has(#formBuilderForm){width:min(100%,740px)}.form-builder-questions{display:grid;gap:12px;margin:15px 0}.form-question-row{background:#faf8fe;border:1px solid #e8e0f6;border-radius:14px;padding:16px}.form-question-head{display:flex;align-items:center;justify-content:space-between;font-weight:800;font-size:11px;margin-bottom:10px}.form-question-row .form-grid{align-items:center}.form-question-row .q-options-wrap[hidden]{display:none!important}.form-question-row textarea{resize:vertical}
.response-card{border:1px solid #e8e3f1;background:#fbfaff;border-radius:11px;padding:15px;margin-bottom:10px}.response-card strong{font-size:12px}.response-card p{font-size:11px;line-height:1.7;margin:11px 0 0}.responses-list{max-height:55vh;overflow:auto}.form-manager-card .btn{border:1px solid #e7e1ef}
@media(max-width:1100px){.settings-grid{grid-template-columns:1fr}}
@media(max-width:720px){.project-tab-wrap .timeline-tab{padding:8px 10px;font-size:11px}.project-drag-hint{font-size:9px}.timeline-cover-thumbnail{width:51px;left:-54px}.timeline-bar.has-cover{margin-left:52px}.forms-manager-grid{grid-template-columns:1fr}.schedule-toolbar p{font-size:10px}.account-avatar-block{gap:12px}.account-avatar-block>.avatar{width:65px;height:65px;min-width:65px}.permission-row{grid-template-columns:1fr 52px 52px;padding:10px 7px}.forms-manager-hero{padding:14px}.timeline-bar.has-cover.is-tiny .timeline-cover-thumbnail{width:31px;left:-34px}}
/* Keep Task Calendar vertically scrollable without altering fixed Timeline viewport. */
.main.tasks-view:has(.calendar-wrap){display:block;overflow-y:auto;overflow-x:hidden}
/* Livium v4: Project swatches, photo-first users and draggable timeline */
.avatar-photo{background:#eeeaf6!important;overflow:hidden;color:transparent!important}.avatar-photo img{display:block;width:100%;height:100%;object-fit:cover;border-radius:inherit}.profile-card .avatar-photo{padding:0}
.project-tab-wrap{display:flex;align-items:center;border-bottom:2px solid transparent}.project-tab-wrap:has(.timeline-tab.active){border-color:var(--project-accent,#8566db)}.project-tab-wrap .timeline-tab.active{color:var(--project-accent,#8566db)!important;background:color-mix(in srgb,var(--project-accent,#8566db) 9%,white)}
.project-color-picker{position:relative;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;width:20px;height:24px;color:var(--project-accent,#8566db);font-size:15px;margin-right:3px}.project-color-picker:hover{transform:scale(1.12)}.project-color-input{position:absolute!important;inset:0!important;opacity:0!important;width:100%!important;height:100%!important;cursor:pointer;border:0;padding:0}.project-color-picker span{pointer-events:none}
.timeline-bar{cursor:grab;user-select:none}.timeline-bar.timeline-manipulating{z-index:15!important;cursor:grabbing;box-shadow:0 0 0 2px #7142c7,0 8px 25px #7759ab4f!important}.timeline-resize-handle{position:absolute;top:0;bottom:0;width:11px;z-index:10;cursor:ew-resize;background:#ffffff22}.timeline-resize-handle:hover{background:#fff9}.timeline-resize-handle:after{content:'';display:block;width:2px;height:18px;background:#ffffffb9;border-radius:3px;position:absolute;left:5px;top:50%;transform:translateY(-50%)}.timeline-resize-handle.resize-left{left:0;border-radius:8px 0 0 8px}.timeline-resize-handle.resize-right{right:0;border-radius:0 8px 8px 0}.timeline-bar.has-cover .timeline-resize-handle.resize-left{left:0}
.note-rich-preview{color:#676673;line-height:1.65;font-size:12px;overflow-wrap:anywhere;max-height:220px;overflow:hidden}.note-rich-preview p,.note-rich-preview div{margin:0 0 5px!important;font-size:inherit}.note-rich-preview ul,.note-rich-preview ol{margin:5px 0;padding-left:20px}.note-rich-preview span,.note-rich-preview font{max-width:100%}
.rich-toolbar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;background:#f7f4fd;border:1px solid #dfd5f0;padding:8px;border-radius:12px 12px 0 0}.rich-toolbar select{max-width:185px!important;width:auto!important;min-height:35px;padding:7px 10px!important;border:1px solid #e6dff0;background:#fff}.rich-tool{min-width:36px;height:36px;display:inline-grid;place-items:center;background:white;border:1px solid #e3dbef;border-radius:8px;font-size:16px;cursor:pointer}.rich-tool:hover{color:#6742ba;border-color:#9173d2}.rich-editor{min-height:170px;max-height:350px;overflow:auto;outline:none;border:1px solid #dfd5f0;border-top:0;padding:13px 15px;background:#fff;border-radius:0 0 12px 12px;line-height:1.6;font-family:Inter,Arial,sans-serif;overflow-wrap:anywhere}.rich-editor:focus{border-color:#9e7cdd}.rich-editor p{margin:0 0 9px}
/* Forms visual builder: options laid out as columns rather than textarea rows */
.modal:has(#formBuilderForm){width:min(960px,calc(100vw - 20px));max-width:960px}.modal:has(#formBuilderForm) .modal-body{max-height:72vh;overflow:auto}.form-builder-questions{display:grid;gap:18px}.form-question-row{border:1px solid #e8e2f0;border-radius:16px;background:#fcfbff;padding:18px;box-shadow:0 3px 12px #7056a209}.form-question-head{display:flex;justify-content:space-between;align-items:center;margin:0 0 13px;font-weight:750;color:#5c487b}.form-option-editor{display:grid;gap:12px}.form-options-columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}.form-option-cell{background:#fff;padding:9px;border:1px solid #e7e1ef;border-radius:10px;min-width:0}.form-option-row{display:flex;gap:4px;align-items:center}.form-option-row input{min-width:0;flex:1;font-size:12px}.btn-icon-mini{display:inline-flex;justify-content:center;align-items:center;border:0;background:#f4eef9;color:#7058a4;border-radius:7px;padding:7px;cursor:pointer}.btn-icon-mini .icon{width:13px;height:13px}.option-image-wrap{position:relative;display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:7px}.option-image-wrap img{width:66px;height:55px;object-fit:cover;border-radius:8px}.option-upload-label{font-size:11px;font-weight:700;display:inline-flex;align-items:center;gap:4px;cursor:pointer;padding:6px 9px;border:1px dashed #b4a0d7;border-radius:8px;color:#7653c0}.option-upload-label .icon{width:12px;height:12px}.q-media-area{display:grid;grid-template-columns:1fr 1fr;gap:12px}.q-image-wrap,.form-header-image{display:grid;gap:8px;align-items:start}.q-image-wrap img,.form-header-image img{display:block;width:100%;max-height:145px;object-fit:cover;border-radius:10px}.form-header-image img{max-height:180px}.form-header-image input,.q-image-wrap input{max-width:100%}.q-grid-wrap{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.q-grid-wrap .form-options-columns{grid-template-columns:repeat(auto-fit,minmax(110px,1fr))}.q-scale-wrap{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.q-scale-wrap input,.q-rating-wrap input{width:100%}.q-upload-wrap{background:#f4eeff;padding:12px 14px;border-radius:10px;font-size:12px}.builder-add-actions{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0 5px}.builder-add-actions button{border:1px dashed #9b7bd2;color:#6e50b1;background:#faf7ff}.form-question-row [hidden]{display:none!important}.form-header-image [hidden]{display:none!important}
@media(max-width:760px){.q-media-area,.q-grid-wrap{grid-template-columns:1fr}.q-scale-wrap{grid-template-columns:repeat(2,1fr)}.form-options-columns{grid-template-columns:repeat(2,minmax(0,1fr))}.rich-toolbar select{max-width:135px!important}}
@media(max-width:410px){.form-options-columns{grid-template-columns:1fr}}
/* Keep Trello-style timeline covers visible outside the colored bar */
.timeline-bar.has-cover{overflow:visible!important}.timeline-bar.has-cover .timeline-cover-thumbnail{z-index:9}.timeline-bar.has-cover .timeline-resize-handle{z-index:12}

/* Livium Management v5 — layout, privacy, response browser, shortcuts and gallery */
.search-wrap.is-hidden{display:none!important}
.brand-mark:has(.app-logo){background:transparent;box-shadow:none;width:34px;height:34px;overflow:hidden}
.app-logo{max-width:100%;max-height:100%;object-fit:contain;display:block}
.shell.sidebar-collapsed .sidebar{width:72px!important;flex-basis:72px!important;transition:width .2s,flex-basis .2s}
.shell.sidebar-collapsed .brand-row{height:100px;flex-direction:column;justify-content:center;gap:9px;padding:8px}
.shell.sidebar-collapsed .brand{margin:auto}
.shell.sidebar-collapsed #brandName,.shell.sidebar-collapsed .nav-item>span,.shell.sidebar-collapsed .profile-text,.shell.sidebar-collapsed .profile-card>.icon{display:none!important}
.shell.sidebar-collapsed .sidebar-nav{padding:18px 11px}
.shell.sidebar-collapsed .nav-item{justify-content:center;padding:11px}
.shell.sidebar-collapsed .nav-item .icon{width:21px;height:21px}
.shell.sidebar-collapsed .profile-card{padding:10px;justify-content:center}
.note-visibility-badge{display:inline-flex;align-items:center;vertical-align:middle;border-radius:20px;padding:4px 8px;background:#ffffff9e;color:#635685;font-size:10px;font-weight:750;margin-left:7px}
.password-field{display:block;position:relative;max-width:100%}.password-field>input{padding-right:48px!important;width:100%}
.password-eye{position:absolute;right:5px;top:50%;transform:translateY(-50%);width:38px;height:32px;border:0;border-radius:8px;color:#786798;background:transparent;font-weight:750;font-size:17px;cursor:pointer}
.password-eye:hover{background:#f0eaf9}
.task-calendar-wrap{width:100%;overflow-x:auto}
.task-calendar-wrap .calendar-weekdays{min-width:665px}
.task-calendar-week{position:relative;min-width:665px;background:#fff;border-bottom:1px solid #ece7f2;overflow:hidden}
.calendar-week-cells{position:absolute;inset:0;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));z-index:0}
.calendar-day-bg{display:block;min-width:0;width:100%;padding:7px 10px;position:relative;border:0;border-right:1px solid #ece7f2;background:#fff;text-align:left;color:#5b516b;font-size:12px;font-weight:800;cursor:pointer}
.calendar-day-bg.other-month{background:#fcfbfd;color:#b9b0c1}.calendar-day-bg.today>span{background:#7754d4;border-radius:50%;color:white;padding:5px 8px}
.calendar-day-bg:hover{background:#faf6ff}
.calendar-span{position:absolute;z-index:3;height:23px;display:flex;gap:8px;align-items:center;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border:0;border-radius:6px;background:#e5d7fc;color:#623b9d;font-size:10px;font-weight:750;text-align:left;padding:4px 9px;box-shadow:0 2px 5px #241a3210;cursor:pointer}
.calendar-span:hover{filter:brightness(.95);z-index:5}.calendar-span small{margin-left:auto;font-size:9px;opacity:.8}
.calendar-span.color-blue{background:#d6e6ff;color:#2f649c}.calendar-span.color-mint{background:#c9f4df;color:#1c7958}.calendar-span.color-rose{background:#fbe0e3;color:#98495f}.calendar-span.color-peach{background:#ffe5c9;color:#956120}.calendar-span.color-purple{background:#e1d5ff;color:#603e9e}.calendar-span.ct-done{background:#d0f1e4;color:#28785d}
.shortcuts-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px}.shortcut-card{background:#fff;border:1px solid #ece7f4;border-radius:18px;padding:17px;min-width:0;box-shadow:0 5px 25px #5040790a;display:flex;flex-direction:column;gap:15px}.shortcut-main{display:flex;align-items:center;gap:13px;text-decoration:none;color:#282333;min-width:0}.shortcut-main>div{min-width:0}.shortcut-main strong{display:block;font-size:14px;overflow:hidden;text-overflow:ellipsis}.shortcut-main small{display:block;font-size:11px;color:#9b90a9;margin-top:5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.shortcut-mark{width:53px;height:53px;border-radius:15px;flex-shrink:0;display:grid;place-items:center;background:var(--shortcut-color);font-size:27px;overflow:hidden}.shortcut-mark img{width:100%;height:100%;object-fit:cover}.shortcut-bottom{display:flex;align-items:center;gap:6px;margin-top:auto}.shortcut-bottom>span{font-size:10px;color:#968ba1;flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.shortcut-symbols{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px}.shortcut-symbols label{cursor:pointer;position:relative}.shortcut-symbols input{position:absolute;opacity:0;width:0;height:0}.shortcut-symbols span{display:grid;place-items:center;border:1px solid #e3daef;background:#faf7ff;border-radius:9px;height:40px;font-size:20px}.shortcut-symbols input:checked+span{border-color:#8153d2;box-shadow:0 0 0 2px #d8c7ff}
.gallery-info{margin-bottom:19px;color:#998cab;font-size:12px}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:16px}.gallery-card{background:#fff;border:1px solid #eae4f2;border-radius:15px;overflow:hidden;display:flex;flex-direction:column}.gallery-card>img{height:155px;width:100%;object-fit:contain;background:#f6f3fb}.gallery-card>div{padding:14px;flex:1;display:flex;flex-direction:column;gap:6px}.gallery-card strong{font-size:12px}.gallery-card small{color:#988ea2;font-size:10px}.gallery-card p{font-size:11px;line-height:1.6;overflow-wrap:anywhere;color:#70677d;flex:1}.gallery-card button{align-self:flex-start}
.responses-page{max-width:1000px;margin:0 auto}.responses-page-bar{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:13px;padding-bottom:18px;border-bottom:1px solid #ece5f2}.responses-nav{display:flex;align-items:center;gap:12px}.responses-nav span{color:#8a8094;font-size:12px}.response-person{display:flex;align-items:center;gap:12px;padding:18px 0;border-bottom:1px solid #ede6f5}.response-person .avatar{width:45px;height:45px}.response-person>div:not(.avatar){flex:1}.response-person strong{display:block;font-size:14px}.response-person p{color:#9a91a0;margin:4px 0 0;font-size:11px}.response-fields{display:grid;grid-template-columns:1fr;gap:10px;margin-top:20px}.response-field{background:#faf8fe;border:1px solid #eee7f7;border-radius:12px;padding:17px}.response-field small{font-size:10px;color:#9a8aac;text-transform:capitalize}.response-field h3{margin:5px 0 12px;font-size:13px}.response-field>div{font-size:13px;line-height:1.65;overflow-wrap:anywhere;color:#544a60}.response-answer-item{padding:3px 0}
.form-rich-wrap{border:1px solid #e4daf1;border-radius:11px;overflow:hidden;background:white}
.form-rich-toolbar{display:flex;gap:5px;padding:8px;background:#f7f2ff;align-items:center;flex-wrap:wrap;border-bottom:1px solid #e9e0f5}
.form-rich-tool{min-width:30px;height:29px;border:1px solid #e3d8f2;background:white;border-radius:6px;font-size:12px;color:#665381}
.form-rich-tool:hover{background:#e5dbfa}.form-rich-toolbar select{min-width:80px;max-width:175px;padding:6px;font-size:11px;border:1px solid #e3d8f2;border-radius:7px;background:#fff;color:#665381}
.form-rich-editor{padding:13px 12px;min-height:50px;font-size:14px;line-height:1.6;color:#24232c;outline:0;overflow-wrap:anywhere;max-height:250px;overflow:auto}
.form-rich-editor:empty:before{content:attr(data-placeholder);color:#aba3b9;pointer-events:none}
.form-rich-editor:focus{box-shadow:inset 0 0 0 1px #8a68d5}
.form-background-image img{max-width:150px;max-height:90px;display:block;object-fit:cover;border-radius:9px;margin-bottom:8px}
@media(max-width:720px){.shell.sidebar-collapsed .sidebar{width:226px!important;flex-basis:226px!important}.shell.sidebar-collapsed #brandName,.shell.sidebar-collapsed .nav-item>span,.shell.sidebar-collapsed .profile-text{display:initial!important}.shell.sidebar-collapsed .nav-item{justify-content:flex-start}.shell.sidebar-collapsed .brand-row{height:75px;flex-direction:row}.shortcuts-grid,.gallery-grid{grid-template-columns:repeat(auto-fill,minmax(155px,1fr));gap:10px}.shortcut-card{padding:13px}.shortcut-main{flex-wrap:wrap}.shortcut-symbols{grid-template-columns:repeat(5,minmax(0,1fr))}.responses-page-bar,.responses-nav{width:100%;justify-content:space-between}.response-person{flex-wrap:wrap}.response-person .btn{margin-left:auto}.task-calendar-wrap{overflow-x:auto}}

/* Per-user dark mode: app-level colors are deliberately scoped to the logged-in user's body. */
body.dark-mode{--ink:#f2effb;--muted:#ada5bc;--line:#3a3447;--surface:#191722;--soft:#272332;background:#191722;color:#f2effb}
body.dark-mode .shell,body.dark-mode .workspace{background:#1c1927;color:#ede8f8}
body.dark-mode .sidebar{background:linear-gradient(140deg,#242032,#272037);border-color:#363143}
body.dark-mode .topbar{background:#201b2a;border-color:#332e42}
body.dark-mode .main,body.dark-mode .main.tasks-view{background:#1b1924!important;color:#f1edfb}
body.dark-mode .section-card,body.dark-mode .member-card,body.dark-mode .gallery-card,body.dark-mode .shortcut-card,body.dark-mode .form-manager-card,body.dark-mode .modal,body.dark-mode .toolbar,body.dark-mode .kanban-col,body.dark-mode .timeline-panel,body.dark-mode .task-calendar-week,body.dark-mode .calendar-day-bg,body.dark-mode .calendar-wrap,body.dark-mode .filter-panel{background:#292535!important;border-color:#453d55!important;color:#f0eaf8}
body.dark-mode .nav-item,body.dark-mode .brand,body.dark-mode .welcome strong,body.dark-mode .page-head h1,body.dark-mode h1,body.dark-mode h2,body.dark-mode h3,body.dark-mode .timeline-task-copy strong,body.dark-mode .timeline-period strong{color:#f7f2ff}
body.dark-mode .nav-item.active,body.dark-mode .profile-card,body.dark-mode .search-wrap{background:#38304c;color:white}
body.dark-mode .note-card,body.dark-mode .task-card,body.dark-mode .timeline-bar,body.dark-mode .timeline-progress-track{color:#372651}
body.dark-mode input:not([type=color]):not([type=checkbox]):not([type=radio]),body.dark-mode textarea,body.dark-mode select,body.dark-mode .btn:not(.btn-primary):not(.btn-purple):not(.btn-danger),body.dark-mode .time-nav-btn,body.dark-mode .timeline-nav select,body.dark-mode .form-rich-wrap,body.dark-mode .form-rich-editor,body.dark-mode .form-rich-tool{background:#332d41;color:#f2ecff;border-color:#51475e}
body.dark-mode .btn-primary,body.dark-mode .btn-purple{color:white}
body.dark-mode .modal-backdrop{background:#0b081cbb}
body.dark-mode .timeline-grid-head,body.dark-mode .timeline-left-heading,body.dark-mode .timeline-task-info,body.dark-mode .timeline-tools,body.dark-mode .timeline-controlbar,body.dark-mode .timeline-page{background:#292535;color:#f2ecff}
body.dark-mode .timeline-day,body.dark-mode .timeline-track{border-color:#3f364e;background-color:#2c2739}
body.dark-mode .calendar-day-bg.other-month{background:#252232!important}
body.dark-mode .calendar-day-bg:hover{background:#3b3050!important}
body.dark-mode .activity-row,body.dark-mode .response-person,body.dark-mode .responses-page-bar{border-color:#463c55}
body.dark-mode .response-field,body.dark-mode .form-rich-toolbar,body.dark-mode .form-question-row,body.dark-mode .form-options-columns,body.dark-mode .permission-row,body.dark-mode .forms-manager-hero{background:#30293f!important;color:#eee6fa;border-color:#493e59}
body.dark-mode .response-field>div,body.dark-mode .shortcut-main,body.dark-mode .gallery-card p,body.dark-mode .form-rich-editor{color:#eee6fa}
body.dark-mode .calendar-span{color:#603988}
/* Livium v6 · drag-order form builder, video preview and header crop. */
.form-question-row{position:relative;transition:box-shadow .15s,background .15s}
.form-question-row.form-row-dragging{opacity:.5;border:2px dashed #9b83e3}
.form-question-row.form-row-drop{box-shadow:0 0 0 3px #8c67df!important;background:#f5f0ff!important}
.form-question-head{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px}
.form-row-actions{display:flex;gap:5px;align-items:center}
.form-drag-grip{display:inline-grid;place-items:center;border:1px solid #d9cef4;border-radius:8px;padding:7px 12px;background:#f0ebff;color:#6f51c6;font-size:19px;cursor:grab;touch-action:none}
.form-drag-grip:active{cursor:grabbing}
.form-section-divider{font-size:12px;text-align:center;padding:12px 8px;margin-bottom:12px;border-top:2px dashed #9d7fdb;border-bottom:2px dashed #9d7fdb;background:#eee7ff;color:#7050bd;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;letter-spacing:1px}
.form-question-row.is-form-section{border-color:#b9a3eb!important;background:#faf7ff!important}
.q-video-preview{margin-top:10px}
.form-video-builder{width:100%;max-width:475px;aspect-ratio:16/9;background:#1f1931;overflow:hidden;border-radius:12px}
.form-video-builder iframe{height:100%;width:100%;border:0}
.q-video-preview small{display:block;color:#766889;margin:7px 0}
.q-video-preview .form-video-error{color:#ba4c67}
.form-header-image{display:grid;gap:10px}
.header-crop-stage{position:relative;width:100%;aspect-ratio:1600/460;background:linear-gradient(110deg,#f1eafa,#eae5f4);border:1px dashed #bba8dd;border-radius:10px;overflow:hidden;cursor:grab;touch-action:none;user-select:none}
.header-crop-stage:active{cursor:grabbing}
.header-crop-stage img{width:100%;height:100%;object-fit:cover;object-position:var(--header-x,50%) var(--header-y,50%);pointer-events:none;display:block}
.header-crop-stage .header-empty{position:absolute;inset:0;display:grid;place-items:center;font-size:12px;color:#8579a4}
.header-crop-controls{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:end;margin:12px 0}
.header-crop-controls label{display:block;font-size:12px}
.header-crop-controls input{display:block;width:100%;accent-color:#8157d5;cursor:pointer;margin-top:8px}
.header-crop-controls small{grid-column:1/-1;color:#796c90}
.drive-health{font-weight:650;font-size:12px;padding:12px 14px;border-radius:10px;margin:12px 0}
.drive-health.is-ready{background:#e6f7ed;color:#27704a}
.drive-health.is-incomplete{background:#fff2df;color:#995b2a}
@media(max-width:600px){.header-crop-controls{grid-template-columns:1fr}.form-section-divider{font-size:10px}.form-question-head .btn{padding:7px}.form-drag-grip{font-size:16px}}
/* Override older generic image preview sizing for header crop. */
.form-header-image .header-crop-stage img{height:100%;max-height:none;border-radius:0;object-fit:cover;object-position:var(--header-x,50%) var(--header-y,50%)}
/* Livium Management v7 — warm editorial workspace inspired by reference.
   Full-screen app, no outer frame; a dark inset sidebar and warm cream surfaces. */
:root{--ink:#171716;--muted:#77736b;--line:#e9e3d6;--bg:#f9f4e7;--purple:#171716;--surface:#fcf8ee;--soft:#f4eedf;--v7-yellow:#ffdc68;--v7-pink:#f1afd5;--v7-blue:#b8c9e8;--v7-surface:#fcf8ee;--v7-border:#e8e1d2;--font:Inter,'DM Sans',ui-sans-serif,system-ui,-apple-system,'Segoe UI',sans-serif}
body{background:#fcf7eb;color:#20201e}
.shell,.shell#shell{background:var(--v7-surface);border:0;border-radius:0;box-shadow:none}
.workspace{background:#fcf7eb}
.sidebar{margin:15px 0 15px 15px;width:218px;flex:0 0 218px;border:0;border-radius:19px;background:#131313;box-shadow:0 15px 26px #0a0b0712;color:#fff;overflow:hidden}
.brand-row{border-color:#282828;padding:0 13px 0 21px;height:88px}
.brand{color:#fff;font-size:17px;letter-spacing:-.7px;gap:9px;min-width:0}
.brand #brandName{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.brand-mark{color:#131313;background:var(--v7-yellow);box-shadow:none;border-radius:50%;width:31px;height:31px;flex:0 0 31px}
.brand-mark .icon{width:16px;height:16px}
.sidebar-toggle{color:#f0acd8;background:#2b2829;border-radius:50%;width:28px;height:28px}
.sidebar-toggle:hover{background:#444043;color:#fff}
.sidebar-nav{padding:19px 12px 12px}
.nav-top{border-bottom:1px solid #302f2e;margin-bottom:15px;padding-bottom:13px}
.nav-item{color:#aaa9a6;font-weight:550;font-size:12px;gap:13px;border-radius:10px;min-height:42px;padding:10px 14px;margin-bottom:4px}
.nav-item .icon{stroke:#d0ccc5}
.nav-item:hover{color:#fff;background:#272622}
.nav-item.active{background:#262626;color:#ffd1e6;box-shadow:inset 2px 0 #f3a0cd}
.nav-item.active>.icon{color:#f1a9d2}
.nav-count{background:#3e383b;color:#ffd8e7;border-radius:16px}
.profile-card{background:#292929;border:1px solid #3c3a37;margin-top:0;color:#f4f1e8;border-radius:13px;box-shadow:none}
.profile-text small{color:#a9a5a0}.profile-card .icon{color:#efe5a8}
.sidebar-bottom{padding:15px}
.topbar{background:transparent;border-bottom:0;height:87px;padding:0 28px 0 26px}
.welcome span{color:#777269}.welcome strong{color:#1b1b19;font-weight:800;font-size:14px}
.search-wrap{border:1px solid #cfc5af;border-radius:999px;background:transparent;box-shadow:none;height:39px;width:min(520px,100%)}
.search-wrap .keyboard-hint{background:#eee6d7;color:#736b5f}
.main,.main.tasks-view{background:transparent!important;padding:19px 28px 28px}
.timeline-page-title h1,.page-head h1{font-size:29px;letter-spacing:-1.4px;font-weight:850;color:#1d1c1b}
.page-head p,.timeline-page-title p{font-size:12px;color:#777269;line-height:1.5}
.btn,.btn-sm{transition:background .18s,color .18s,box-shadow .18s}
.btn-primary,.btn-purple{background:#171717!important;border-color:#171717!important;color:#fff!important;border-radius:999px!important;box-shadow:none!important}
.btn-primary:hover,.btn-purple:hover{background:#3c3a36!important}
.timeline-page-actions .btn-primary,.page-head .btn-primary{padding:11px 20px}
.btn:not(.btn-primary):not(.btn-purple):not(.btn-danger){border-color:var(--v7-border);background:#f8f3e9;color:#27251f;border-radius:9px}
.btn:not(.btn-primary):not(.btn-purple):not(.btn-danger):hover{background:#f4e6c8}
.section-card,.stat-card,.member-card,.note-card,.gallery-card,.shortcut-card,.form-manager-card,.forms-manager-hero,.toolbar,.kanban-col,.timeline-panel,.calendar-wrap{background:#fdf9f0!important;border-color:var(--v7-border)!important;box-shadow:0 3px 17px #55453106!important;border-radius:17px}
.timeline-panel{overflow:hidden}.timeline-controlbar{background:#fffaf0;border-color:#e9dfcd}.timeline-period strong,.timeline-task-copy strong{color:#27231d}
.timeline-day,.timeline-calendar-head,.timeline-grid-head,.timeline-left-heading,.timeline-grid,.timeline-task-info,.timeline-track{background:#fdf9ef;border-color:#eee6d8}
.timeline-task-info:hover{background:#fbf3e1!important}
.timeline-day.is-today strong{background:#151515;color:#fff}.timeline-day.is-today span{color:#171717}
.timeline-calendar-icon{background:var(--v7-pink);color:#24231e}
.timeline-layout{background:#ebe3d5;border-color:#e9dfcd;border-radius:999px}
.layout-btn{border-radius:999px;color:#716d64}.layout-btn.active{background:#171717;color:#fff;box-shadow:none}
.layout-btn.active .icon{color:#f4db68}
.timeline-tabs{border-color:#e5decd;gap:10px;padding-bottom:6px}
.project-tab-wrap{background:#efe9df;border:1px solid #e6dece;border-bottom:3px solid var(--project-accent,#eed266);border-radius:999px}
.project-tab-wrap:has(.timeline-tab.active){background:color-mix(in srgb,var(--project-accent,#e3c66d) 25%,#faf5e8);border-color:var(--project-accent,#e3c66d)}
.project-tab-wrap .timeline-tab{color:#5e554d;padding:10px 13px;border-radius:999px}
.project-tab-wrap .timeline-tab.active{color:#181716!important;background:transparent!important}
.timeline-tab span{background:#fffaf0;color:#605852;border-radius:999px}
.project-color-picker{color:var(--project-accent,#e3c66d)}
.project-add{border-color:#ddd3bf!important;border-radius:999px!important;color:#29241c!important}
.timeline-quicksearch,.search-wrap,.time-nav-btn,.timeline-nav select{border-color:#e4dccd;background:#fffaf0;color:#2b2926}
.timeline-grid{background:#fffdf7}.timeline-task-row{border-color:#eee8dc}.timeline-task-info{background:#fffdf7}
.timeline-bar{box-shadow:0 2px 10px #51473411;border-radius:9px}.timeline-ticket{font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.timeline-footer,.timeline-footer-right{color:#8a8378}
.kanban-col{background:#f1ecdf!important}.col-head{color:#2d2923}.task-card{border-radius:14px;box-shadow:0 4px 13px #5041280c}
/* Calendar: dedicated 56px date header above every task bar, dates pinned top-left */
.task-calendar-week{background:#fdf9ee;border-color:#e8e0ce;overflow:hidden}
.calendar-week-cells{position:absolute;inset:0;display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}
.calendar-day-bg{background:#fdf9ef;border-right:1px solid #e9e1d3;color:#2a2723;text-align:left;padding:0;position:relative;min-height:100%}
.calendar-day-bg>span{position:absolute;left:12px;top:12px;display:grid;place-items:center;min-width:23px;height:24px;padding:0 4px;border-radius:8px;color:#322c23;background:#f7efdf;z-index:1}
.calendar-day-bg.today>span{background:#171717!important;color:#fff!important;border-radius:9px;padding:0 7px}
.calendar-span{height:25px;border-radius:8px;white-space:nowrap;box-shadow:0 2px 6px #3731280b;z-index:3}
.calendar-span.color-peach{background:#f9d967;color:#2d2920}.calendar-span.color-blue{background:#b6cae9;color:#243953}.calendar-span.color-purple{background:#e2c9ee;color:#4e3859}.calendar-span.color-mint{background:#b4e4d5;color:#27564d}
.calendar-weekdays{background:#ede6d7}.calendar-weekdays span{color:#706755}
/* Activity date range and numbered pages */
.activity-panel{max-width:1130px;margin:0 auto;padding:23px}
.activity-toolbar{display:flex;justify-content:space-between;align-items:end;flex-wrap:wrap;gap:16px;padding-bottom:20px;border-bottom:1px solid #e7decf}
.activity-toolbar>small{color:#827867;font-weight:650}.activity-date-controls{display:flex;flex-wrap:wrap;align-items:end;gap:12px}
.activity-date-controls label{display:flex;flex-direction:column;gap:7px;font-size:11px;font-weight:750;color:#5b5447}
.activity-date-controls input{border:1px solid #dfd5c3;border-radius:8px;padding:8px 11px;background:#fffef9;color:#222}
.activity-list{padding-top:10px}.activity-pagination{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap;margin:20px 0 2px}
.activity-pagination>span{font-size:11px;color:#847d6c;margin-left:9px}
.activity-page-number{border:1px solid #ded5c5;border-radius:9px;min-width:34px;height:34px;background:#fffaf0;font-weight:800;color:#635a50}
.activity-page-number.active{background:#171717;color:#fff;border-color:#171717}.activity-empty{padding:20px 0;color:#81786a}
/* Forms builder controls and save state */
.form-logo-image{display:grid;gap:11px;justify-items:start}
.form-logo-image img{max-width:112px;max-height:112px;aspect-ratio:1/1;object-fit:contain;background:#f9f4e8;border:1px solid #e9d9bf;border-radius:13px;padding:8px}
.form-logo-image input[type=file]{max-width:100%}
.builder-save-footer{position:sticky;bottom:0;background:#fffcf4;z-index:8;box-shadow:0 -9px 26px #3f322015;border-top:1px solid #e7decd;display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.builder-save-footer .btn-save-form{margin-left:auto;min-width:155px}
.form-save-feedback{flex:1;min-width:160px;max-width:100%;font-size:12px;color:#a14a3d;line-height:1.5}
.builder-save-footer [data-action="delete-form"]{margin-right:auto}
/* Dark mode — deep charcoal + warm gold; readable surfaces, contrasting input panels. */
body.dark-mode{--ink:#f2efe7;--muted:#b8b2a8;--line:#363a36;--bg:#1a1d1d;--surface:#212625;--soft:#2a302e;--v7-surface:#1b201f;--v7-border:#40443d;background:#171b1a;color:#f2eee4}
body.dark-mode .shell,body.dark-mode .workspace{background:#1b201f!important;color:#ece9e0}
body.dark-mode .sidebar{background:#0d0e0d!important;border:1px solid #272b27!important;color:#fff}
body.dark-mode .topbar{background:transparent!important;border:0!important}
body.dark-mode .main,body.dark-mode .main.tasks-view{background:#1b201f!important}
body.dark-mode .brand,body.dark-mode .nav-item.active,body.dark-mode .page-head h1,body.dark-mode .timeline-page-title h1,body.dark-mode .welcome strong{color:#f5f0e5!important}
body.dark-mode .nav-item{color:#b4ada3}body.dark-mode .nav-item.active{background:#302d2b!important;color:#ffdd89!important;box-shadow:inset 2px 0 #e9c56b}
body.dark-mode .nav-item.active .icon{color:#eec675}
body.dark-mode .brand-mark{background:#f0d172!important;color:#151515}
body.dark-mode .profile-card,body.dark-mode .search-wrap{background:#252827!important;color:#f4f0e6;border-color:#47483e}
body.dark-mode .section-card,body.dark-mode .stat-card,body.dark-mode .member-card,body.dark-mode .note-card,body.dark-mode .gallery-card,body.dark-mode .shortcut-card,body.dark-mode .form-manager-card,body.dark-mode .forms-manager-hero,body.dark-mode .toolbar,body.dark-mode .kanban-col,body.dark-mode .timeline-panel,body.dark-mode .calendar-wrap,body.dark-mode .modal,body.dark-mode .form-question-row,body.dark-mode .response-field,body.dark-mode .permission-row,body.dark-mode .form-rich-wrap,body.dark-mode .form-rich-toolbar{background:#272c2a!important;border-color:#41453f!important;color:#efeade!important;box-shadow:none!important}
body.dark-mode .task-calendar-week,body.dark-mode .calendar-day-bg,body.dark-mode .timeline-grid,body.dark-mode .timeline-grid-head,body.dark-mode .timeline-calendar-head,body.dark-mode .timeline-day,body.dark-mode .timeline-left-heading,body.dark-mode .timeline-task-info,body.dark-mode .timeline-track,body.dark-mode .timeline-controlbar,body.dark-mode .timeline-layout,body.dark-mode .timeline-page,body.dark-mode .timeline-tools{background:#272c2a!important;border-color:#3e423a!important;color:#e8e4da!important}
body.dark-mode .calendar-day-bg.other-month{background:#222625!important}
body.dark-mode .calendar-day-bg>span{background:#343931;color:#e5dfd1}
body.dark-mode .calendar-day-bg.today>span{background:#f1d66e!important;color:#151515!important}
body.dark-mode .timeline-day strong,body.dark-mode .timeline-period strong,body.dark-mode .timeline-task-copy strong,body.dark-mode .welcome strong,body.dark-mode h1,body.dark-mode h2,body.dark-mode h3,body.dark-mode .activity-row strong{color:#eee9df!important}
body.dark-mode .timeline-day.is-today strong{background:#f2d371;color:#191919!important}
body.dark-mode .project-tab-wrap{background:#303531;border-color:#4d5045}
body.dark-mode .project-tab-wrap:has(.timeline-tab.active){background:color-mix(in srgb,var(--project-accent) 23%,#292d2b)}
body.dark-mode .project-tab-wrap .timeline-tab,body.dark-mode .project-tab-wrap .timeline-tab.active{color:#f5e8c2!important}
body.dark-mode .project-tab-wrap .timeline-tab span{background:#454942;color:#f6e5ba}
body.dark-mode .layout-btn{color:#d0c9bd}body.dark-mode .layout-btn.active{background:#f3d270;color:#191919}
body.dark-mode .layout-btn.active .icon{color:#191919}
body.dark-mode input:not([type=color]):not([type=checkbox]):not([type=radio]),body.dark-mode textarea,body.dark-mode select,body.dark-mode .btn:not(.btn-primary):not(.btn-purple):not(.btn-danger),body.dark-mode .time-nav-btn,body.dark-mode .activity-page-number,body.dark-mode .timeline-nav select,body.dark-mode .form-rich-editor,body.dark-mode .form-rich-tool{background:#313733!important;border:1px solid #4b5149!important;color:#eeeadd!important}
body.dark-mode .activity-page-number.active{background:#f1d36b!important;color:#181818!important}
body.dark-mode .form-save-feedback{color:#f8cc91}body.dark-mode .builder-save-footer{background:#282d2a;border-color:#515348}
body.dark-mode .btn-primary,body.dark-mode .btn-purple{background:#f1d36b!important;color:#171717!important;border-color:#f1d36b!important}
body.dark-mode .timeline-bar,body.dark-mode .task-card,body.dark-mode .calendar-span,body.dark-mode .note-card{color:#28211b}
body.dark-mode .calendar-span.color-purple{color:#453252}body.dark-mode .calendar-span.color-blue{color:#23415e}
body.dark-mode .form-rich-toolbar,body.dark-mode .form-question-row.is-form-section{background:#303630!important}
body.dark-mode .form-section-divider{background:#373a33;color:#f0d276}
body.dark-mode .form-rich-editor{background:#313733!important;color:#f3ecdf!important}
body.dark-mode .activity-toolbar{border-color:#41463f}body.dark-mode .activity-date-controls label{color:#ccc6b9}
body.dark-mode .activity-pagination span,body.dark-mode .activity-toolbar small,body.dark-mode .page-head p,body.dark-mode .timeline-page-title p{color:#b4b0a5}
body.dark-mode .form-manager-card p,body.dark-mode .response-field>div,body.dark-mode .gallery-card p,body.dark-mode .shortcut-main{color:#d8d2c5}
@media(max-width:950px){.sidebar{margin:12px 0 12px 12px;width:210px;flex-basis:210px}.main,.main.tasks-view{padding:17px 17px 23px}}
@media(max-width:720px){.sidebar{margin:0;border-radius:0;width:236px;flex-basis:236px}.topbar{height:65px;padding:0 14px}.main,.main.tasks-view{padding:13px 13px 20px}.timeline-page-title{align-items:flex-start;flex-wrap:wrap}.activity-toolbar{align-items:flex-start}.activity-date-controls{gap:7px}.builder-save-footer{padding:13px 15px}.builder-save-footer .btn-save-form{width:100%;margin-left:0}.builder-save-footer .form-save-feedback{order:3}.nav-item{font-size:13px}.brand{font-size:16px}}
/* Legibility fixes in personal dark mode for form labels, switches and guidance text. */
body.dark-mode .form-field label,body.dark-mode .settings-row strong,body.dark-mode .account-panel label,body.dark-mode .permission-row,body.dark-mode .form-question-head{color:#ded9cf!important}
body.dark-mode .form-field small,body.dark-mode .account-panel small,body.dark-mode .muted,body.dark-mode .settings-row small{color:#bbb5aa!important}
body.dark-mode input::placeholder,body.dark-mode textarea::placeholder{color:#9eaaa0!important}
body.dark-mode .toggle.on{background:#ebcd67!important}
body.dark-mode .toggle.on::after{background:#191919!important}
body.dark-mode .form-rich-editor:empty::before{color:#b7ae9f!important}
/* Warm workspace dialogs: retain rich editor features with the same neutral palette. */
body:not(.dark-mode) .modal{background:#fdf9ef;border:1px solid #e8decd}
body:not(.dark-mode) .modal-header{background:#fcf7ec;border-color:#e8dfd0}
body:not(.dark-mode) .modal-header h2{color:#1d1c1b}
body:not(.dark-mode) .form-question-row{background:#fffdf6;border-color:#e8dfd0;box-shadow:0 2px 10px #55442707}
body:not(.dark-mode) .form-question-head{color:#50483e}
body:not(.dark-mode) .form-rich-wrap{background:#fffdf6;border-color:#e5ddcf}
body:not(.dark-mode) .form-rich-toolbar{background:#f2e8d7;border-color:#e8dfd0}
body:not(.dark-mode) .form-rich-tool{border-color:#e1d7c6;background:#fffcf5;color:#3f372b}
body:not(.dark-mode) .form-rich-editor{color:#26231d;background:#fffdf6}
body:not(.dark-mode) .form-question-row.is-form-section{background:#fdf0d8!important;border-color:#e3c16c!important}
body:not(.dark-mode) .form-section-divider{background:#fff4d0;border-color:#e6c66a;color:#544122}
body:not(.dark-mode) .form-options-columns .form-option-cell{background:#fffaf0;border-color:#e5ddcd}
body:not(.dark-mode) .form-question-row .q-upload-wrap{background:#f3e9d5;border-radius:10px;padding:12px}
body:not(.dark-mode) .form-drag-grip{background:#f1d36e;border-color:#d9c069;color:#151515}
body:not(.dark-mode) .form-row-actions .btn,body:not(.dark-mode) .builder-add-actions .btn{background:#f7edd8;border-color:#e8dcc6;color:#272018}
body:not(.dark-mode) .header-crop-stage{background:#f2e8d4;border-color:#cfc0a4}
body:not(.dark-mode) .form-rich-editor:empty::before{color:#978b78}
body.dark-mode .modal-header{background:#292f2b;border-color:#444c42}
body.dark-mode .form-option-cell,body.dark-mode .form-options-columns,body.dark-mode .q-upload-wrap{background:#343a35!important;color:#f2e9d8;border-color:#52584c}
body.dark-mode .form-drag-grip{background:#f0d26b;color:#151515;border-color:#e1c366}
body.dark-mode .header-crop-stage{background:#353b35;border-color:#586052}
/* Keep longer custom workspace names visible rather than ellipsized in the narrow sidebar. */
.brand-row .brand{flex:1;min-width:0;margin-right:6px}
.brand #brandName{display:block;white-space:normal;overflow:visible;text-overflow:clip;font-size:14px;line-height:1.15;letter-spacing:-.25px;overflow-wrap:break-word}
.shell.sidebar-collapsed .brand #brandName{display:none}

/* Livium v7.2 — form appearance, clear ordering, and preserved sticky-note colors */
body.dark-mode .note-card,body.dark-mode .note-card.color-cream,body.dark-mode .note-card.color-blue,body.dark-mode .note-card.color-purple,body.dark-mode .note-card.color-mint,body.dark-mode .note-card.color-rose,body.dark-mode .note-card.color-pink,body.dark-mode .note-card.color-lavender,body.dark-mode .note-card.color-peach{background:var(--note-bg,#ffebc8)!important;border-color:#cfc7b4!important;color:#27231e!important}
body.dark-mode .note-card h3,body.dark-mode .note-card .note-rich-preview,body.dark-mode .note-card .note-rich-preview *,body.dark-mode .note-card .note-footer,body.dark-mode .note-card .note-visibility-badge{color:#292622!important}
.form-appearance-panel{border:1px solid #e2d8c7;border-radius:16px;padding:18px;margin:18px 0;background:#fffaf0}
.form-appearance-panel h3{margin:0 0 15px;font-size:15px}
.form-color-field{min-width:0}.form-color-control{display:flex;flex-wrap:wrap;align-items:center;gap:9px;margin-top:8px}
.form-color-choose{display:inline-flex;align-items:center;justify-content:center;position:relative;gap:6px;padding:10px 13px;background:#181818;color:#fff;border-radius:10px;font-weight:750;font-size:12px;cursor:pointer;overflow:hidden;white-space:nowrap}
.form-color-choose .icon{width:15px;height:15px}.form-color-choose .form-color-picker{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;padding:0}
.form-hex-input{width:113px!important;max-width:113px;text-transform:uppercase;font-family:ui-monospace,SFMono-Regular,Consolas,monospace!important;font-size:13px!important;font-weight:750!important}
.form-color-swatch{border-radius:9px;width:35px;height:35px;flex:0 0 35px;border:1px solid #908a7d;box-shadow:inset 0 0 0 2px #fff5}
.background-mode-choice{display:flex;gap:9px;flex-wrap:wrap;margin:10px 0 14px}
.background-mode-choice label{display:inline-flex;align-items:center;gap:6px;padding:10px 15px;border:1px solid #dcd1bf;background:#fff;border-radius:10px;font-size:13px;font-weight:750;cursor:pointer}
.background-mode-choice label:has(input:checked){border-color:#a78b4c;background:#f9e5a8}
[data-background-panel][hidden]{display:none!important}
.background-image-panel .form-background-image{max-width:520px}.background-image-panel .form-background-image img{max-width:100%;max-height:190px;border-radius:12px}.background-image-panel input[type=range]{width:min(100%,420px);accent-color:#1a1a19;cursor:pointer}
.form-schedule-field{padding:15px;background:#f8f0d8;border-radius:13px;margin-top:18px}.form-schedule-field input{max-width:310px}.form-schedule-field small{display:block;margin:5px 0;color:#766b54}
.form-row-actions .question-order-btn{font-size:13px!important;font-weight:850!important;padding:9px 12px!important;background:#e8dcc5!important;border:1px solid #baad95!important;color:#1e1d1a!important;min-height:38px}
.form-row-actions .question-order-btn:hover{background:#f0cc77!important}
.builder-save-footer .btn-save-form{margin-left:auto;background:#f3e3ae;border:1px solid #d4b969;color:#29231a;font-weight:800}
.builder-save-footer .btn-publish-form{background:#161715!important;color:#fff!important;font-weight:850;min-height:42px}
.builder-save-footer .btn-close-form,.form-card-actions .btn-close-form{border-color:#d5aaa1;color:#9d463c;background:#ffe8e3;font-weight:750}
.form-state.closed{background:#f7e0d5;color:#9b4b3f}.form-close-info{display:block;color:#9c715b;margin-top:7px}
body.dark-mode .form-appearance-panel{background:#2b302b;border-color:#444a41}
body.dark-mode .background-mode-choice label{background:#333934;border-color:#646a60;color:#fff}
body.dark-mode .background-mode-choice label:has(input:checked){background:#5e5030;border-color:#ccb275}
body.dark-mode .form-schedule-field{background:#353124;color:#eee7d9}
@media(max-width:680px){.builder-save-footer .btn-save-form,.builder-save-footer .btn-publish-form{width:auto;flex:1;margin-left:0}.form-row-actions{flex-wrap:wrap}.form-color-control{gap:7px}}
/* Keep the selected note paper color identical in light and dark themes. */
.note-card,.note-card.color-cream,.note-card.color-lavender,.note-card.color-mint,.note-card.color-blue,.note-card.color-purple,.note-card.color-pink,.note-card.color-peach,.note-card.color-rose{background:var(--note-bg,#ffebc8)!important}
.form-appearance-panel .form-color-choose,.form-appearance-panel .form-color-choose .icon{color:#fff!important}

/* Livium v8.3: interaction polish and simplified editors */
button,.btn,.icon-btn,.col-button,.shortcut-card,.form-manager-card,.project-tab-wrap,select,input[type=color],label:has(>input[type=file]){transition:background-color .17s ease,color .17s ease,box-shadow .17s ease,transform .17s ease,border-color .17s ease;}
button:not(:disabled):hover,.btn:not(:disabled):hover,.icon-btn:not(:disabled):hover{filter:brightness(.975);transform:translateY(-1px);box-shadow:0 3px 12px #201c1412;}
button:not(:disabled):active,.btn:not(:disabled):active,.icon-btn:not(:disabled):active{transform:translateY(1px) scale(.985);box-shadow:none;}
button:focus-visible,.btn:focus-visible{outline:3px solid #e9be62;outline-offset:2px;}
.btn-danger,.danger-hover{border-color:#edc6bd!important;color:#9e3f39!important;background:#fff3ee!important;}
.btn-danger:not(:disabled):hover,.danger-hover:not(:disabled):hover{background:#f5dad6!important;border-color:#d78d86!important;color:#a3272e!important;}
body.dark-mode .btn-danger,body.dark-mode .danger-hover{background:#573735!important;color:#ffd0c8!important;border-color:#915753!important;}
body.dark-mode .btn-danger:hover,body.dark-mode .danger-hover:hover{background:#76423e!important;}
.timeline-bar,.timeline-resize-handle{touch-action:none!important;overscroll-behavior:contain;}
.timeline-bar.timeline-manipulating{user-select:none;cursor:grabbing!important;}
.main,.workspace{overscroll-behavior:contain;}
.project-context-menu{position:fixed;z-index:4000;width:232px;display:flex;flex-direction:column;gap:5px;padding:11px;background:#fff9ed;border:1px solid #d3c3a9;border-radius:14px;box-shadow:0 18px 48px #1113;color:#29241d;}
.project-context-menu strong{font-size:13px;padding:4px 7px 9px}.project-context-menu button{display:flex;align-items:center;gap:10px;text-align:left;border:0;padding:11px;border-radius:9px;background:transparent;font-weight:700;color:inherit;cursor:pointer}
.project-context-menu button:hover{background:#f4e9d6}.project-context-color{padding:8px 10px;display:flex;align-items:center;justify-content:space-between;font-weight:700;font-size:12px;gap:12px}.project-context-color input{width:45px;height:32px;border:0;background:none;cursor:pointer}
.project-draft-badge{display:inline-flex;margin-left:5px;font-size:9px;font-weight:850;letter-spacing:0;text-transform:uppercase;color:#8e7540;background:#fff6cc;padding:3px 6px;border-radius:99px;vertical-align:middle}
body.dark-mode .project-context-menu{background:#292c2a;border-color:#59554d;color:#f4efdb}
.task-cover-top{position:relative;height:178px;background:linear-gradient(135deg,#f1e8d1,#e9e0ce);flex-shrink:0;overflow:hidden;border-radius:16px 16px 0 0;display:grid;place-items:center;color:#7d6b54;font-size:14px;font-weight:750}
.task-cover-top-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.task-cover-empty{pointer-events:none}
.task-cover-upload{position:absolute;right:13px;bottom:12px;background:#111c;color:#fff;padding:10px 14px;border-radius:11px;display:flex;align-items:center;gap:8px;z-index:2;cursor:pointer;font-weight:800}
.task-cover-upload:hover{background:#333;transform:translateY(-2px)}
.task-cover-upload .icon{width:16px;height:16px}.task-cover-delete{position:absolute;right:155px;bottom:12px;z-index:2;padding:10px;border-radius:9px;background:#fee7e2;border:0;color:#a12d2b}
.task-cover-top + .modal-header{border-radius:0}.modal:has(.task-cover-top){max-height:95vh}
.task-links-editor{display:flex;flex-direction:column;gap:9px}.task-link-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:10px;background:#faf6ee;border-radius:12px;border:1px solid #e8decb}
.task-link-row .task-link-title{flex:1 1 130px;min-width:100px}.task-link-row .task-link-url{flex:3 1 220px;min-width:130px}
.task-legacy-attachments{margin-top:12px;padding:8px;border-top:1px solid #ded6c7}
.livium-upload-surface{position:relative;display:inline-flex;gap:9px;align-items:center;justify-content:center;padding:11px 16px;min-height:42px;border:1px solid #c8b69a;border-radius:11px;background:#e8d9b8;color:#25221c;font-weight:800;cursor:pointer;overflow:hidden;width:max-content;max-width:100%}
.livium-upload-surface:hover{background:#f4dea8;box-shadow:0 4px 16px #0002;transform:translateY(-1px)}
.livium-upload-surface input[type=file]{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;opacity:0!important;cursor:pointer!important;z-index:2}
.form-header-image,.form-background-image,.q-image-wrap,.form-logo-image{position:relative}
.form-header-image>.livium-upload-surface,.form-background-image>.livium-upload-surface,.q-image-wrap>.livium-upload-surface{position:absolute;bottom:12px;right:12px;z-index:4;background:#121212df;color:#fff;border-color:#fff7}
.form-question-row{position:relative}.form-question-head>span{display:flex;align-items:center;gap:8px;font-weight:800;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.form-question-head>span>.form-drag-grip{flex:0 0 auto}
.question-required-toggle{display:inline-flex;align-items:center;gap:7px;padding:8px 12px;background:#f5e8c8;border-radius:9px;border:1px solid #dfcca1;white-space:nowrap;font-size:12px;font-weight:750;cursor:pointer}
.question-required-toggle:has(input:checked){background:#d7eec8;border-color:#a9c592}
.question-required-toggle input{accent-color:#30754c;width:15px;height:15px}
.form-question-row.question-collapsed>.form-question-details{display:none!important}
.question-toggle-btn{background:#ead5a9!important;color:#2b2518!important}.form-question-row.question-collapsed .question-toggle-btn .icon{transform:rotate(-90deg)}
.form-identity-toggle{list-style:none!important;display:flex!important;align-items:center;gap:9px;background:#1c1c1a!important;color:white!important;border-radius:11px;padding:12px 16px!important;cursor:pointer;font-weight:850!important;min-height:44px}
.form-identity-toggle::-webkit-details-marker{display:none}.form-identity-toggle .icon:last-child{margin-left:auto}.form-identity-details[open] .form-identity-toggle .icon:last-child{transform:rotate(180deg)}
.form-card-top-actions{position:absolute;top:12px;right:12px;display:flex;gap:5px;z-index:2}.form-manager-card{position:relative;padding-top:42px}
.form-card-top-actions .icon-btn{background:#fff9;border:1px solid #ded2bb;width:33px;height:33px;display:grid;place-items:center}
.individual-permissions{margin-top:12px;padding-top:12px;border-top:1px solid #e6dfd5}.user-permissions-grid{display:grid;grid-template-columns:repeat(2,minmax(150px,1fr));gap:6px 12px;max-height:275px;overflow:auto;background:#f9f1df;border:1px solid #e3d8be;padding:12px;border-radius:12px}
.user-permissions-grid label{display:flex;gap:8px;align-items:center;font-size:12px;cursor:pointer}.user-permissions-grid input{accent-color:#333;width:16px;height:16px}
body.dark-mode .task-link-row,body.dark-mode .user-permissions-grid{background:#30352f;border-color:#4e584b}
body.dark-mode #noteRichEditor,body.dark-mode .rich-editor[contenteditable],body.dark-mode .rich-editor,body.dark-mode .modal .rich-editor{background:#fff!important;color:#191919!important;border-color:#c9c9c9!important;caret-color:#111!important}
.form-rich-font option,#richFont option{font-family:var(--self-font,inherit)}
@media(max-width:700px){.task-cover-top{height:128px}.form-row-actions{flex-wrap:wrap}.task-link-row{flex-direction:column;align-items:stretch}.user-permissions-grid{grid-template-columns:1fr}.project-context-menu{width:min(240px,calc(100vw - 20px))}}
/* Keep image upload affordances inside their media area rather than on top of text fields. */
.q-image-wrap{min-height:82px;display:flex;align-items:center;justify-content:flex-start;gap:12px;padding:10px;position:relative}
.q-image-wrap:not(:has(img))>.livium-upload-surface,.form-background-image:not(:has(img))>.livium-upload-surface{position:relative;bottom:auto;right:auto;}
.form-header-image:not(:has(img))>.livium-upload-surface{position:relative;bottom:auto;right:auto;}
.q-image-wrap:has(img)>.livium-upload-surface{position:absolute;bottom:10px;right:10px}
.q-image-wrap>img{width:100%;max-height:220px;object-fit:contain}
.project-context-menu .project-color-input{position:static!important;inset:auto!important;transform:none!important;opacity:1!important;pointer-events:auto!important;width:48px!important;height:30px!important;z-index:auto!important}

/* Livium 8.4: timeline, form controls, overlays and pagination */
html,body,.workspace,.main,.timeline-scroll{overflow-anchor:none}
.timeline-bar,.timeline-task-row{overflow-anchor:none}
.project-tabs{display:flex;align-items:center;gap:9px;flex-wrap:wrap;overflow:visible!important;position:relative;z-index:4}
.btn-new-task{border-radius:999px!important;background:#1e1c1b!important;border:1px solid #1e1c1b!important;color:#fff!important;font-weight:850;padding:9px 15px}
.btn-new-task:hover{background:#48413a!important}
.btn-draft-projects{border:1px dashed #baa78b!important;background:#f1e9d9!important;color:#5e5043!important}
.draft-projects-host{position:relative;z-index:10}
.draft-project-menu{position:absolute;top:calc(100% + 6px);min-width:190px;right:0;display:grid;gap:5px;padding:8px;background:#fffdf6;border:1px solid #ddd3c2;border-radius:12px;box-shadow:0 12px 35px #34251725;z-index:60}
.draft-project-menu button{border:0;display:flex;align-items:center;gap:9px;text-align:left;padding:10px;background:transparent;border-radius:8px;cursor:pointer;color:#302b23}
.draft-project-menu button:hover{background:#f2e8d6}
.livium-pagination{display:flex;justify-content:center;align-items:center;gap:7px;flex-wrap:wrap;margin:24px 0 10px}
.livium-pagination button{border:1px solid #e1d6c5;background:#fff9ef;min-width:35px;height:35px;border-radius:10px;font-weight:700;color:#28241e;cursor:pointer}
.livium-pagination button:hover{background:#f4e6ca}
.livium-pagination button.selected{background:#1d1c1a;color:white;border-color:#1d1c1a}
.livium-pagination button:disabled{opacity:.35;cursor:default}
.font-gallery-panel{padding:23px}.font-gallery-top{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px}
.font-gallery-top h2{margin:0}.font-upload-form{display:flex;align-items:center;flex-wrap:wrap;gap:8px}
.font-gallery-grid{margin-top:20px;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}
.font-gallery-item{border:1px solid #e7dece;border-radius:14px;padding:17px;background:#fffaf1;display:flex;flex-direction:column;gap:8px}
.font-gallery-item span{font-size:25px}.font-gallery-item strong{font-size:15px}
.livium-dialog-overlay{position:fixed;inset:0;z-index:99999;display:flex;align-items:center;justify-content:center;background:#0008;padding:18px}
.livium-dialog{width:min(100%,410px);border:1px solid #e1d8c9;background:#fffaf0;color:#29251f;border-radius:20px;padding:26px;box-shadow:0 22px 60px #0004}
.livium-dialog h3{margin:0 0 16px;font-size:20px}.livium-dialog-content{line-height:1.65;font-size:14px}.livium-dialog-content p{margin:0}
.livium-dialog-content label{display:flex;flex-direction:column;gap:7px;margin-bottom:12px;font-weight:700}
.livium-dialog-content input[type=text]{padding:10px;border:1px solid #d7cbbb;border-radius:9px;background:white;color:#222}
.livium-dialog-content input[type=color]{height:55px;width:100%;border:0;background:transparent;cursor:pointer}
.livium-dialog-buttons{display:flex;gap:10px;justify-content:end;margin-top:22px}
.question-order-btn,.question-toggle-btn,.form-row-actions .btn{min-width:33px!important;min-height:33px!important;display:inline-grid;place-items:center;padding:5px!important}
.form-question-name{display:flex;align-items:center;gap:8px;min-width:0;flex-wrap:wrap}
.form-question-name .question-toggle-btn{flex:0 0 32px}
.action-raster-icon{width:21px;height:21px;object-fit:contain;display:block}
.form-question-head .form-row-actions{flex-wrap:wrap}
.question-required-toggle{border:1px solid #d9cdb8;border-radius:9px;padding:5px 7px;min-height:33px;display:flex;align-items:center;gap:5px}
.question-required-toggle input{width:16px;height:16px;accent-color:#171717}
.form-identity-shell{margin-bottom:19px!important}.form-identity-toggle{padding:13px 18px!important}.form-identity-details{margin-bottom:10px}
.background-mode-choice{min-width:260px;gap:10px}.background-mode-choice label{min-width:130px!important;padding:10px 15px!important}
.form-image-upload,.livium-upload-surface{color:#191919!important;background:#ffe39d!important;border-color:#e0b965!important;font-weight:800!important}
.dark-mode .form-image-upload,.dark-mode .livium-upload-surface{color:#171512!important;background:#ffe39d!important}
.dark-mode .question-required-toggle,.dark-mode .form-row-actions .btn{color:#fdf5e6!important;border-color:#988a73!important;background:#38332c!important}
.dark-mode .question-required-toggle span{color:#fff!important}.dark-mode .question-required-toggle input{accent-color:#efd37b}
.dark-mode .timeline-day>span,.dark-mode .timeline-day strong,.dark-mode .timeline-calendar-head span{color:#f6eeda!important}
.dark-mode .timeline-day.is-today span{color:#e9c96f!important}
.dark-mode .font-gallery-item,.dark-mode .font-gallery-panel{background:#312c27!important;border-color:#544a3f!important;color:#f3eadd!important}
.dark-mode .livium-dialog{background:#2b2724;color:#faf2e9;border-color:#5d5247}
.dark-mode .draft-project-menu{background:#2f2a25;border-color:#5e5445}.dark-mode .draft-project-menu button{color:#fff4df}
.dark-mode .draft-project-menu button:hover{background:#50483c}
@media(max-width:720px){.font-gallery-top{display:block}.draft-project-menu{left:0;right:auto}.form-question-head{align-items:flex-start}}

.form-question-name{overflow:visible!important;white-space:normal!important}.form-question-name-text{display:inline-block;min-width:0;max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

.dialog-hue-slider{width:100%;height:15px;accent-color:#8467c0;background:linear-gradient(90deg,red,#ff0,lime,cyan,blue,magenta,red);border-radius:99px;appearance:none;cursor:pointer}.dialog-hue-slider::-webkit-slider-thumb{appearance:none;width:18px;height:22px;border-radius:5px;border:3px solid white;background:#fff;box-shadow:0 1px 5px #0006}

/* Livium v8.5 — contextual menus, uploads and responses */
.draft-project-portal{position:fixed!important;z-index:4500!important;right:auto!important;left:auto;top:auto;min-width:220px;max-height:min(380px,65vh);overflow-y:auto;background:#fffdf8;box-shadow:0 20px 56px #18110d38}
.draft-project-portal>strong{padding:10px 12px 7px;font-size:12px;color:#746455}
.draft-project-portal button{display:flex;align-items:center;gap:9px;width:100%;border:0;border-radius:9px;background:transparent;color:#352c25;padding:11px 10px;text-align:left;cursor:pointer}
.draft-project-portal button:hover{background:#f8e9ce}
body.dark-mode .draft-project-portal{background:#2d302c;border-color:#666253}
body.dark-mode .draft-project-portal button{color:#f6eadd}body.dark-mode .draft-project-portal button:hover{background:#42443e}
.task-context-menu{z-index:4700!important;min-width:212px}
.task-context-menu .danger-hover:hover{background:#ffdcdb!important;color:#b12d33!important}
.project-preview{--project-preview-color:#8566DB;display:flex;align-items:center;gap:10px;width:fit-content;border:1px solid color-mix(in srgb,var(--project-preview-color) 70%,#fff);border-radius:12px;padding:13px 18px;background:color-mix(in srgb,var(--project-preview-color) 20%,#fff);color:#252525;font-weight:800}
.project-preview .icon{color:var(--project-preview-color)}
.font-upload-form .livium-upload-surface{min-width:190px}
.font-gallery-panel .font-upload-form{gap:8px}
body.dark-mode .livium-upload-surface,body.dark-mode .font-upload-form .livium-upload-surface,body.dark-mode .account-avatar-block .livium-upload-surface,body.dark-mode #faviconForm .livium-upload-surface,body.dark-mode #brandImageForm .livium-upload-surface{background:#ffe5a8!important;color:#29210e!important;border:2px solid #d7b46d!important;box-shadow:0 0 0 2px #0004!important}
body.dark-mode .form-manager-card .form-card-top-actions .icon-btn,body.dark-mode .form-manager-card .form-card-top-actions a{background:#e3bd78!important;color:#1d1b18!important;border:1px solid #f8d797!important;opacity:1!important}
body.dark-mode .form-manager-card .form-card-top-actions .icon-btn:hover{background:#f9dea5!important}
body.dark-mode .form-manager-card .form-card-top-actions .icon-btn.danger-hover{background:#7b3738!important;color:#fff!important}
.results-shell{max-width:1110px;margin:10px auto 28px}
.results-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:20px}
.results-mode-tabs{display:inline-flex;gap:5px;background:#ece4d6;padding:5px;border:1px solid #ddcdb6;border-radius:15px}
.results-mode-tabs button{border:0;border-radius:11px;background:transparent;padding:10px 15px;display:flex;align-items:center;gap:8px;font-size:12px;color:#554a41;font-weight:750;cursor:pointer}
.results-mode-tabs button.active{background:#171717;color:#fff;box-shadow:0 3px 12px #120f0d28}
.response-carousel{border:1px solid #e6dcca;border-radius:22px;padding:24px;background:linear-gradient(145deg,#f5f9ee 0%,#e6f4ec 48%,#d7ebe3 100%);overflow:hidden}
.response-carousel-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.response-counter{font-weight:900;font-size:12px;letter-spacing:.2px;color:#264c43;padding:10px 14px;background:#ffffffc4;border-radius:999px}
.response-person-nav,.response-question-nav{display:flex;align-items:center;gap:12px;justify-content:center;flex-wrap:wrap}
.response-person-nav .btn,.response-question-nav .btn{background:#fffefa!important;color:#27231f!important;border:1px solid #d5cfc2!important;font-weight:850}
.response-card-stack{position:relative;isolation:isolate;width:min(100%,565px);min-height:385px;margin:40px auto 30px}
.response-card-back,.response-answer-card{position:absolute;inset:0;border-radius:28px;box-shadow:0 13px 34px #164c3425}
.response-card-back.layer-a{z-index:0;background:#f1f8ee;transform:rotate(7deg) translate(15px,-5px)}
.response-card-back.layer-b{z-index:1;background:#fffaf1;transform:rotate(-5deg) translate(-12px,10px)}
.response-answer-card{position:relative;z-index:2;display:flex;flex-direction:column;min-height:385px;padding:25px 29px;background:#fffefa;border:1px solid #e7e2d7;transform:rotate(var(--card-tilt,0deg));transition:transform .3s ease}
.response-answer-card:hover{transform:rotate(0deg) translateY(-2px)}
.respondent-identity{display:flex;align-items:center;gap:10px;padding-bottom:15px;border-bottom:1px solid #f1eee4}
.respondent-avatar{display:grid;place-items:center;width:44px;height:44px;background:#b9e9d6;border-radius:50%;color:#246851}
.respondent-identity strong{display:block;font-size:14px;color:#282621}.respondent-identity small{display:block;color:#8f8b81;font-size:11px;margin-top:3px}
.response-card-body{flex:1;padding:26px 9px 19px;display:flex;flex-direction:column;justify-content:center;text-align:center;align-items:center;min-height:200px}
.response-question-label{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:#8b897c;font-weight:750}
.response-card-body h2{font-size:clamp(18px,3vw,29px);font-family:Georgia,'Times New Roman',serif;font-weight:600;line-height:1.3;max-width:450px;margin:14px auto;color:#181815}
.response-card-value{font-size:15px;line-height:1.6;color:#374b44;max-width:95%;max-height:220px;overflow:auto;overflow-wrap:anywhere}
.response-card-value .response-answer-item{display:inline-block;margin:3px;padding:7px 12px;background:#e9f5ec;border-radius:999px;font-size:12px}
.response-card-bottom{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #efecdf;padding-top:12px;color:#a4a094;font-weight:750;font-size:11px}
.response-question-nav{margin:27px auto 10px}
.response-question-dots{display:flex;gap:6px;flex-wrap:wrap;justify-content:center;max-width:220px}
.response-question-dots button{border:0;background:#b3cdc2;width:8px;height:8px;padding:0;border-radius:50%;cursor:pointer}
.response-question-dots button.active{width:23px;background:#315b4a;border-radius:10px}
.response-delete{display:flex;justify-content:center;margin:22px auto 0}
.results-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:18px}
.summary-tile{border:1px solid #ddd4c7;border-radius:16px;padding:17px;background:#fffdf7}
.summary-tile small{display:block;color:#80786e;font-size:12px;margin-bottom:8px}.summary-tile strong{font-size:30px;font-weight:900;color:#28221b}
.stat-question-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.stat-question{background:#fffdf7;border:1px solid #e5d8c4;border-radius:19px;padding:22px;box-shadow:0 4px 16px #39250c0a;min-width:0}
.stat-question .stats-card-top{display:flex;justify-content:space-between;gap:12px;color:#968977;font-size:11px;text-transform:capitalize;font-weight:850}
.stat-question h3{font-size:17px;color:#28241f;margin:14px 0;line-height:1.5}.stat-question p{font-size:12px;color:#72675d}
.stats-average{display:flex;gap:10px;align-items:center;padding:12px 14px;background:#d3eadb;border-radius:12px;color:#314c3d}
.stats-average strong{font-size:27px}.stats-average span{font-size:12px}
.stats-options{display:grid;gap:11px;margin-top:15px}.stats-option>div:first-child{display:flex;justify-content:space-between;gap:12px;font-size:12px;margin-bottom:6px}.stats-option strong{font-weight:750}.stats-option span{white-space:nowrap;color:#776a5a}.stats-track{height:8px;background:#ece5d6;border-radius:10px;overflow:hidden}.stats-track span{display:block;height:100%;border-radius:10px;background:linear-gradient(90deg,#66c7a2,#4d9fc4)}
.stats-notice{background:#fff3d6;border:1px solid #e3c589;border-radius:12px;padding:12px}
body.dark-mode .results-mode-tabs{background:#343731;border-color:#656155}body.dark-mode .results-mode-tabs button{color:#f4ecd9}body.dark-mode .results-mode-tabs button.active{background:#e9c17f;color:#211d19}
body.dark-mode .response-carousel{background:linear-gradient(135deg,#25372f,#1d312b);border-color:#4b6959}body.dark-mode .response-counter{background:#354b40;color:#e9f5e3}
body.dark-mode .stat-question,body.dark-mode .summary-tile{background:#2d302b;color:#e7e1d5;border-color:#585a4c}body.dark-mode .stat-question h3,body.dark-mode .summary-tile strong{color:#f8f0e5}body.dark-mode .stats-card-top,body.dark-mode .stat-question p,body.dark-mode .summary-tile small{color:#c8bfae}
body.dark-mode .stats-average{background:#375246;color:#fff8eb}body.dark-mode .stats-track{background:#52584b}
@media(max-width:750px){.response-carousel{padding:15px 10px}.response-card-stack{width:calc(100% - 40px);min-height:330px;margin:38px auto 26px}.response-answer-card{min-height:330px;padding:15px}.response-card-body{padding:15px 4px}.response-card-body h2{font-size:19px}.results-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.summary-tile{padding:12px}.summary-tile strong{font-size:20px}.stat-question-grid{grid-template-columns:1fr}.results-mode-tabs{width:100%;justify-content:center}.response-person-nav{flex:1}}

/* Livium v8.6 — response reader, swipe, dark-mode contrast, and clearer controls */
.response-answer-card{touch-action:pan-y;cursor:grab;user-select:none;will-change:transform}
.response-answer-card:active{cursor:grabbing}
.response-answer-card.response-slide-left{animation:liviumCardEnterLeft .34s cubic-bezier(.17,.8,.25,1) both}
.response-answer-card.response-slide-right{animation:liviumCardEnterRight .34s cubic-bezier(.17,.8,.25,1) both}
@keyframes liviumCardEnterLeft{from{opacity:.35;transform:translateX(85px) rotate(9deg)}to{opacity:1;transform:rotate(var(--card-tilt,0deg))}}
@keyframes liviumCardEnterRight{from{opacity:.35;transform:translateX(-85px) rotate(-9deg)}to{opacity:1;transform:rotate(var(--card-tilt,0deg))}}
.response-card-value{font-size:clamp(19px,2.1vw,26px);font-weight:650;line-height:1.55;color:#292f2b;max-height:260px}
.response-card-value .response-answer-item{font-size:16px;padding:9px 15px}
.respondent-avatar{overflow:hidden;flex:none}
.respondent-avatar img{width:100%;height:100%;object-fit:cover}
body.dark-mode .response-answer-card{background:#faf7f0!important;border-color:#cdbfa8;color:#292724!important}
body.dark-mode .response-card-value,body.dark-mode .response-card-body h2,body.dark-mode .respondent-identity strong{color:#292724!important}
body.dark-mode .respondent-identity small,body.dark-mode .response-question-label,body.dark-mode .response-card-bottom{color:#726a5c!important}
body.dark-mode .response-card-back.layer-a{background:#a4b6a8}body.dark-mode .response-card-back.layer-b{background:#d9c6bb}
body.dark-mode .task-card .task-title,body.dark-mode .task-card h3,body.dark-mode .task-card .task-top{color:#231e1d!important}
body.dark-mode .form-question-row .question-required-toggle{background:#f0e1bd!important;color:#29231c!important}
body.dark-mode .livium-upload-surface,body.dark-mode .option-upload-label{background:#e9cc92!important;color:#221d18!important;border:1px solid #f5e5bb!important}
.required-word{font-size:11px;font-weight:750;display:inline-block;margin-left:4px}
@media (prefers-reduced-motion: reduce){.response-answer-card.response-slide-left,.response-answer-card.response-slide-right{animation:none}}

/* v8.7 – Font library, export controls and high-contrast buttons */
.font-gallery-title{margin:25px 0 5px;font-size:17px;font-weight:850}
.font-gallery-item{position:relative;min-height:154px}
.font-gallery-item small{color:#72685b;font-size:11px}
.font-gallery-item span{font-size:26px;line-height:1.25;overflow-wrap:anywhere}
.font-delete-button{margin-top:auto;align-self:flex-end;background:#fff0ed!important;color:#9f3430!important;border:1px solid #d89c98!important}
.font-delete-button:hover{background:#ffd7cf!important;color:#7a1412!important}
.response-choice-images{display:flex;align-items:flex-start;justify-content:center;flex-wrap:wrap;gap:10px;margin-top:12px;max-width:100%}
.response-choice-image{display:flex;flex-direction:column;align-items:center;gap:5px;max-width:175px;padding:7px;background:#f0f8f2;border:1px solid #e1e9de;border-radius:14px;color:#274231}
.response-choice-image img{max-width:160px;max-height:130px;width:auto;height:auto;object-fit:contain;border-radius:9px}
.response-choice-image span{font-size:12px;line-height:1.3;overflow-wrap:anywhere}
.response-card-tools{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;margin:2px auto 16px}
.response-card-tools button{border:1px solid #c7d4c7!important;background:#fffefa!important;color:#283b31!important;font-weight:850}
.response-card-tools button:hover{background:#e2f4e6!important}
.response-card-bottom span:first-child{max-width:78%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#4f6657;font-size:12px}
.response-card-value{overflow:auto;max-height:320px}
body.dark-mode .font-gallery-item small{color:#e5d7ba}
body.dark-mode .font-gallery-item .font-delete-button{background:#502c2d!important;color:#ffd5cf!important;border-color:#b87970!important}
body.dark-mode .response-card-tools button{background:#f0e4c5!important;color:#1f281f!important;border-color:#e8c98b!important}
body.dark-mode .option-upload-label,body.dark-mode .question-required-toggle,body.dark-mode .form-image-upload,body.dark-mode .q-image-wrap .livium-upload-surface{background:#f4d99e!important;color:#1a1711!important;border:2px solid #ffe5a7!important}
body.dark-mode .option-upload-label .icon,body.dark-mode .question-required-toggle span,body.dark-mode .form-image-upload .icon{color:#1a1711!important;opacity:1!important}
body.dark-mode .option-upload-label:hover,body.dark-mode .question-required-toggle:hover{background:#ffe9b5!important}

/* v8.8: actual gallery specimens and dark theme text visibility */
.font-gallery-item .font-gallery-specimen{display:block!important;font-weight:400!important;font-size:31px!important;letter-spacing:normal!important;text-transform:none!important;line-height:1.3!important;white-space:nowrap;overflow:visible;color:#27231d!important}
body.dark-mode .font-gallery-item .font-gallery-specimen{color:#f7e7cf!important}
body.dark-mode .option-upload-label,body.dark-mode .option-upload-label *,body.dark-mode .form-question-row .question-required-toggle,body.dark-mode .form-question-row .question-required-toggle *,body.dark-mode .form-question-row .livium-upload-surface,body.dark-mode .form-question-row .livium-upload-surface *{color:#15120e!important;opacity:1!important;text-shadow:none!important}
body.dark-mode .option-upload-label,body.dark-mode .form-question-row .question-required-toggle,body.dark-mode .form-question-row .livium-upload-surface{background:#ffe29b!important;border-color:#e3b754!important}
/* v8.8: make upload captions bold and unambiguous in either theme. */
.livium-upload-surface,.livium-upload-surface strong,.option-upload-label{font-weight:900!important}
body.dark-mode .option-upload-label svg,body.dark-mode .option-upload-label .icon,body.dark-mode .option-upload-label span,body.dark-mode .livium-upload-surface strong{color:#15120e!important;stroke:#15120e!important;opacity:1!important}

/* v8.9: Dark editor controls — dark button surface, clearly visible light labels/icons. */
body.dark-mode #formBuilderForm .option-upload-label,
body.dark-mode #formBuilderForm .livium-upload-surface,
body.dark-mode #formBuilderForm .form-image-upload,
body.dark-mode .modal .option-upload-label,
body.dark-mode .modal .livium-upload-surface{
 background:#252b33!important;
 color:#fff9eb!important;
 border:2px solid #8492a7!important;
 box-shadow:0 2px 10px rgba(0,0,0,.25)!important;
 font-weight:900!important;
}
body.dark-mode #formBuilderForm .option-upload-label:hover,
body.dark-mode #formBuilderForm .livium-upload-surface:hover,
body.dark-mode .modal .option-upload-label:hover,
body.dark-mode .modal .livium-upload-surface:hover{
 background:#354151!important;
 border-color:#b8c9e1!important;
}
body.dark-mode #formBuilderForm .option-upload-label svg,
body.dark-mode #formBuilderForm .option-upload-label .icon,
body.dark-mode #formBuilderForm .option-upload-label span,
body.dark-mode #formBuilderForm .livium-upload-surface svg,
body.dark-mode #formBuilderForm .livium-upload-surface .icon,
body.dark-mode #formBuilderForm .livium-upload-surface strong,
body.dark-mode .modal .option-upload-label svg,
body.dark-mode .modal .option-upload-label .icon,
body.dark-mode .modal .livium-upload-surface strong{
 color:#fff9eb!important;
 stroke:#fff9eb!important;
 opacity:1!important;
 text-shadow:none!important;
}

/* Livium v8.9.2: keep native file input invisible even when dark-mode rules
   make icons/text opaque. The visible Upload label remains interactive. */
.livium-upload-surface > input[type="file"],
body.dark-mode .livium-upload-surface > input[type="file"],
body.dark-mode .form-question-row .livium-upload-surface > input[type="file"],
body.dark-mode #formBuilderForm .livium-upload-surface > input[type="file"],
body.dark-mode .modal .livium-upload-surface > input[type="file"] {
  position:absolute!important;
  inset:0!important;
  box-sizing:border-box!important;
  width:100%!important;
  height:100%!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  opacity:0!important;
  color:transparent!important;
  background:transparent!important;
  font-size:0!important;
  cursor:pointer!important;
  z-index:2!important;
}
.livium-upload-surface > input[type="file"]::file-selector-button {
  visibility:hidden!important;
}
body.dark-mode #formBuilderForm .livium-upload-surface,
body.dark-mode #formBuilderForm .option-upload-label,
body.dark-mode .modal .livium-upload-surface {
  background:#252b33!important;
  color:#fff9eb!important;
  border:2px solid #8492a7!important;
}
body.dark-mode #formBuilderForm .livium-upload-surface strong,
body.dark-mode #formBuilderForm .livium-upload-surface span,
body.dark-mode #formBuilderForm .option-upload-label span,
body.dark-mode #formBuilderForm .livium-upload-surface svg,
body.dark-mode .modal .livium-upload-surface strong {
  color:#fff9eb!important;
  stroke:#fff9eb!important;
  opacity:1!important;
}
