*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--primary: #6c5ce7;--primary-mid: #a29bfe;--primary-light: #ddd6fe;--accent: #fd79a8;--accent-warm: #fab1a0;--bg: #f8f7ff;--card: #ffffff;--border: #e8e4f8;--text: #2d3436;--text-mid: #636e72;--text-light: #b2bec3;--urgent: #e17055;--attention: #fdcb6e;--overdue: #d63031;--done: #00b894;--info: #74b9ff;--urgent-bg: #fff0ed;--attention-bg: #fff9e6;--done-bg: #e6fff9;--overdue-bg: #ffe6e6;--info-bg: #e8f4ff;--sidebar-w: 240px;--sidebar-w-collapsed: 60px;--topbar-h: 56px;--radius: 14px;--shadow: 0 2px 8px rgba(108,92,231,.06), 0 1px 3px rgba(0,0,0,.04);--shadow-md: 0 8px 24px rgba(108,92,231,.1);--shadow-lg: 0 12px 36px rgba(108,92,231,.14);--gradient-sidebar: linear-gradient(180deg, #4a2bd8 0%, #7a5cff 100%);--gradient-hero: linear-gradient(135deg, #6c5ce7 0%, #a29bfe 50%, #fd79a8 100%)}body{font-family:Noto Sans SC,sans-serif;background:var(--bg);color:var(--text);font-size:14.5px;line-height:1.55;-webkit-font-smoothing:antialiased}.app-layout{display:flex;height:100vh;overflow:hidden}.sidebar{position:relative;width:var(--sidebar-w);background:var(--gradient-sidebar);display:flex;flex-direction:column;transition:width .25s ease;flex-shrink:0;overflow:hidden}.sidebar>.sidebar-scrim{z-index:1}.sidebar>.sidebar-header,.sidebar>.sidebar-footer,.sidebar>.collapse-btn,.sidebar>nav,.sidebar>.mobile-scrim{position:relative;z-index:2}.sidebar.collapsed{width:var(--sidebar-w-collapsed)}.sidebar-header{height:var(--topbar-h);display:flex;align-items:center;justify-content:space-between;padding:0 12px;border-bottom:1px solid rgba(255,255,255,.15)}.logo-area{display:flex;align-items:center;gap:10px;min-width:0}.logo-icon{font-size:22px;flex-shrink:0}.logo-text{font-size:15px;font-weight:700;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.collapse-btn{background:#ffffff26;border:none;color:#fffc;cursor:pointer;padding:4px 8px;border-radius:6px;font-size:13.5px;flex-shrink:0;transition:background .15s}.collapse-btn:hover{background:#ffffff40;color:#fff}.sidebar-nav{flex:1;padding:8px 0;overflow-y:auto}.nav-item{display:flex;align-items:center;gap:10px;padding:11px 16px;color:#fffffff5;text-decoration:none;font-size:15px;transition:background .15s,color .15s;white-space:nowrap}.nav-item:hover{background:#ffffff2e;color:#fff}.nav-item.active{background:#fff;color:#4a2bd8;font-weight:700;border-radius:0 20px 20px 0;margin-right:8px;box-shadow:0 2px 8px #0000002e}.nav-icon{font-size:16px;flex-shrink:0}.nav-label{overflow:hidden;text-overflow:ellipsis}.nav-group{margin:2px 0}.nav-group-header{display:flex;align-items:center;gap:10px;padding:11px 16px;color:#fffc;font-size:13.5px;font-weight:700;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .15s,color .15s;letter-spacing:.3px}.nav-group-header:hover{background:#ffffff24;color:#fff}.nav-group-arrow{margin-left:auto;font-size:9px;transition:transform .2s;color:#ffffffb3}.nav-group-arrow.open{transform:rotate(0)}.nav-group-arrow:not(.open){transform:rotate(-90deg)}.nav-group-children{max-height:0;overflow:hidden;transition:max-height .3s ease}.nav-group-children.open{max-height:300px}.nav-group-children .nav-child{display:block;padding:10px 16px 10px 44px;font-size:13.5px;color:#fffffff2;text-decoration:none}.nav-group-children .nav-child:hover{background:#ffffff2e;color:#fff}.nav-group-children .nav-child.active{background:#ffffff2e;color:#ffeaa7;font-weight:600;border-radius:0 20px 20px 0;margin-right:8px}.sidebar.collapsed .nav-group .nav-group-header{padding:11px;justify-content:center}.nav-sort-row{display:flex;align-items:center;position:relative}.nav-sort-row>.nav-item,.nav-sort-row>.nav-group{flex:1}.sort-arrows{display:flex;gap:2px;margin-right:8px;opacity:0;transition:opacity .2s}.sidebar.sorting-mode .sort-arrows{opacity:1}.sort-arrow-btn{background:#fff3;border:none;color:#fffc;cursor:pointer;padding:4px 6px;border-radius:4px;font-size:11px;line-height:1;transition:background .15s}.sort-arrow-btn:hover:not(:disabled){background:#ffffff59;color:#ffeaa7}.sort-arrow-btn:disabled{opacity:.3;cursor:default}.sidebar.sorting-mode .nav-item{pointer-events:none}.sidebar.sorting-mode .nav-group-header{cursor:default}.sidebar.sorting-mode .nav-sort-row:hover{background:#ffffff0f}.sidebar-footer{padding:8px 12px;border-top:1px solid rgba(255,255,255,.15)}.sort-toggle-btn{background:#ffffff1f;border:none;color:#ffffffb3;cursor:pointer;padding:8px 14px;border-radius:8px;font-size:13.5px;width:100%;transition:background .15s,color .15s}.sort-toggle-btn:hover{background:#ffffff38;color:#ffeaa7}.sort-actions{display:flex;gap:8px}.sort-action-btn{background:#ffffff1f;border:none;color:#ffffffb3;cursor:pointer;padding:8px 12px;border-radius:8px;font-size:13.5px;flex:1;transition:background .15s,color .15s}.sort-action-btn:hover{background:#ffffff38;color:#fff}.sort-action-btn.primary{background:#ffc10733;color:#ffeaa7}.sort-action-btn.primary:hover{background:#ffc10759}.main-wrapper{flex:1;display:flex;flex-direction:column;overflow:hidden}.topbar{height:var(--topbar-h);background:var(--card);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 24px;flex-shrink:0;box-shadow:var(--shadow);z-index:10}.topbar-title{font-size:16px;font-weight:700;color:var(--primary)}.topbar-right{display:flex;align-items:center;gap:16px}.topbar-date{font-size:13.5px;color:var(--text-mid)}.main-content{flex:1;overflow-y:auto;padding:24px;background:var(--bg)}.main-content>div{animation:fadeSlideIn .25s ease}@keyframes fadeSlideIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.page-title{font-size:20px;font-weight:700;color:var(--primary)}.page-subtitle{font-size:13.5px;color:var(--text-mid);margin-top:2px}.btn{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border-radius:10px;border:none;cursor:pointer;font-size:13.5px;font-family:inherit;font-weight:500;transition:all .2s}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{background:#5a4bd1;transform:translateY(-1px);box-shadow:0 4px 12px #6c5ce74d}.btn-ghost{background:transparent;color:var(--primary);border:1px solid var(--border)}.btn-ghost:hover{background:var(--primary-light)}.btn-danger{background:var(--urgent);color:#fff}.btn-danger:hover{background:#d35400;transform:translateY(-1px)}.btn-done{background:var(--done);color:#fff}.btn-done:hover{background:#00a381;transform:translateY(-1px)}.btn-sm{padding:5px 12px;font-size:13.5px}.btn-icon{padding:6px 10px;font-size:13.5px}.card{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);border:1px solid var(--border);transition:box-shadow .2s}.card:hover{box-shadow:var(--shadow-md)}.card-header{padding:16px 20px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}.card-title{font-size:15px;font-weight:600;color:var(--text)}.card-body{padding:16px 20px}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse}th{text-align:left;padding:10px 12px;font-size:13.5px;font-weight:600;color:var(--text-mid);text-transform:uppercase;letter-spacing:.05em;background:#f3f0ff;border-bottom:2px solid var(--primary-light)}td{padding:12px;border-bottom:1px solid var(--border);font-size:13.5px;color:var(--text);vertical-align:middle}tr:last-child td{border-bottom:none}tr:hover td{background:#f8f5ff}tr:nth-child(2n) td{background:#faf8ff}tr:nth-child(2n):hover td{background:#f3eefc}.amount-col{text-align:right;font-variant-numeric:tabular-nums;font-family:Roboto Mono,monospace}.badge{display:inline-block;padding:3px 10px;border-radius:20px;font-size:11px;font-weight:600;letter-spacing:.02em}.badge-urgent{background:var(--urgent-bg);color:var(--urgent);border:1px solid rgba(225,112,85,.2)}.badge-attention{background:var(--attention-bg);color:#e17055;border:1px solid rgba(253,203,110,.3)}.badge-overdue{background:var(--overdue-bg);color:var(--overdue);border:1px solid rgba(214,48,49,.2)}.badge-done{background:var(--done-bg);color:var(--done);border:1px solid rgba(0,184,148,.2)}.badge-normal{background:var(--info-bg);color:#0984e3;border:1px solid rgba(116,185,255,.2)}.num{font-family:Roboto Mono,monospace;font-weight:500}.amount{color:var(--primary);font-weight:600}.form-grid{display:grid;gap:14px}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px}.form-group{display:flex;flex-direction:column;gap:4px}.form-label{font-size:13.5px;font-weight:600;color:var(--text-mid);text-transform:uppercase;letter-spacing:.05em}.form-control{padding:8px 12px;border:1.5px solid var(--border);border-radius:10px;font-size:13.5px;font-family:inherit;background:#fff;color:var(--text);transition:border-color .15s,box-shadow .15s}.form-control:focus{outline:none;border-color:var(--primary-mid);box-shadow:0 0 0 4px #6c5ce71f}textarea.form-control{resize:vertical;min-height:80px}.form-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:16px;padding-top:16px;border-top:1px solid var(--border)}.toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:16px}.search-input{padding:7px 12px;border:1.5px solid var(--border);border-radius:10px;font-size:13.5px;font-family:inherit;background:var(--card);width:220px;transition:border-color .15s,box-shadow .15s}.search-input:focus{outline:none;border-color:var(--primary-mid);box-shadow:0 0 0 4px #6c5ce71f}.filter-select{padding:7px 12px;border:1.5px solid var(--border);border-radius:10px;font-size:13.5px;font-family:inherit;background:var(--card)}.reminder-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px}.reminder-card{border-radius:var(--radius);padding:14px 16px;border:2px solid transparent;transition:box-shadow .2s,transform .15s;position:relative}.reminder-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.reminder-card.overdue{background:var(--overdue-bg);border-color:#d6303140}.reminder-card.urgent{background:var(--urgent-bg);border-color:#e1705533}.reminder-card.attention{background:var(--attention-bg);border-color:#fdcb6e4d}.reminder-card.done{background:var(--done-bg);border-color:#00b89433}.reminder-card-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:10px}.reminder-module{font-size:11px;font-weight:600;color:var(--text-light);text-transform:uppercase;letter-spacing:.05em}.reminder-customer{font-size:15px;font-weight:700;color:var(--text);margin-top:4px}.reminder-card-body{display:flex;flex-direction:column;gap:4px}.reminder-detail{font-size:13.5px;color:var(--text-mid);display:flex;align-items:center;gap:6px}.reminder-detail-label{color:var(--text-light);font-size:11px;min-width:70px}.reminder-days{font-size:28px;font-weight:700;font-family:Roboto Mono,monospace;line-height:1}.reminder-days.overdue{color:var(--overdue)}.reminder-days.urgent{color:var(--urgent)}.reminder-days.attention{color:var(--attention)}.reminder-days.done{color:var(--done);font-size:18px}.reminder-days-label{font-size:11px;color:var(--text-light);font-family:Noto Sans SC,sans-serif}.reminder-card-actions{display:flex;gap:6px;margin-top:12px}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin-bottom:24px}.stat-card{background:var(--card);border-radius:var(--radius);padding:16px;box-shadow:var(--shadow);border:1px solid var(--border);transition:transform .15s,box-shadow .2s}.stat-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.stat-num{font-size:32px;font-weight:700;font-family:Roboto Mono,monospace;color:var(--primary)}.stat-num.urgent{color:var(--urgent)}.stat-num.attention{color:#e17055}.stat-label{font-size:13.5px;color:var(--text-light);margin-top:4px}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#6c5ce733;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal{background:var(--card);border-radius:16px;width:100%;max-width:560px;max-height:85vh;overflow-y:auto;box-shadow:var(--shadow-lg)}.modal-header{padding:18px 24px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}.modal-title{font-size:16px;font-weight:700;color:var(--primary)}.modal-close{background:var(--primary-light);border:none;font-size:16px;cursor:pointer;color:var(--primary);padding:4px 8px;border-radius:8px;line-height:1;transition:background .15s}.modal-close:hover{background:var(--primary-mid);color:#fff}.modal-body{padding:20px 24px}.modal-footer{padding:14px 24px;border-top:1px solid var(--border);display:flex;justify-content:flex-end;gap:8px}.confirm-text{font-size:14px;color:var(--text-mid);line-height:1.6;margin-bottom:8px}.toast{position:fixed;top:16px;left:50%;transform:translate(-50%);padding:10px 24px;border-radius:12px;font-size:13.5px;font-weight:500;z-index:9999;box-shadow:var(--shadow-md);animation:toastSlide .3s ease}.toast-success{background:var(--done);color:#fff}.toast-error{background:var(--urgent);color:#fff}@keyframes toastSlide{0%{opacity:0;transform:translate(-50%) translateY(-12px)}to{opacity:1;transform:translate(-50%) translateY(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.empty-state{text-align:center;padding:48px 20px;color:var(--text-light)}.empty-icon{font-size:40px;margin-bottom:12px;opacity:.5}.empty-text{font-size:14px}.skeleton-rows{display:flex;flex-direction:column;gap:8px;padding:14px 0}.skeleton-row{height:36px;background:linear-gradient(90deg,#f0ecfc 25%,#e8e0f8,#f0ecfc 75%);background-size:200% 100%;border-radius:8px;animation:shimmer 1.5s infinite}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.conditions-list{display:flex;flex-direction:column;gap:8px}.cond-item{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;background:#f8f5ff;border-radius:10px;border:1px solid var(--border);cursor:pointer;transition:background .15s,transform .1s}.cond-item:hover{background:#efe8ff;transform:scale(1.01)}.cond-item.fulfilled{background:var(--done-bg);border-color:#00b89433}.cond-checkbox{width:18px;height:18px;border:2px solid var(--primary-mid);border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:13.5px;flex-shrink:0;margin-top:1px;transition:all .15s}.cond-item.fulfilled .cond-checkbox{background:var(--done);border-color:var(--done);color:#fff}.cond-text{font-size:13.5px;color:var(--text);flex:1}.cond-item.fulfilled .cond-text{color:var(--done);text-decoration:line-through}.req-add{display:flex;gap:8px;margin-top:12px}.req-add input,.toolbar-spacer{flex:1}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--primary-mid);border-radius:3px}@media (max-width: 768px){.app-layout{flex-direction:column}.sidebar{width:100%;height:auto;flex-direction:row}.sidebar-header{width:auto;border-bottom:none;border-right:1px solid rgba(255,255,255,.15)}.sidebar-nav{flex-direction:row;overflow-x:auto;padding:0}.nav-item{padding:10px 14px}.collapse-btn{display:none}.reminder-grid{grid-template-columns:1fr}}.form-input{width:100%;padding:8px 12px;border:1.5px solid var(--border);border-radius:10px;font-size:13.5px;color:var(--text);background:#fff;transition:border-color .2s,box-shadow .2s;box-sizing:border-box;font-family:inherit}.form-input:focus{outline:none;border-color:var(--primary-mid);box-shadow:0 0 0 4px #6c5ce71f}.form-input::placeholder{color:var(--text-light)}.form-input:disabled{background:#f8f5ff;cursor:not-allowed}.kanban-board{display:flex;gap:14px;overflow-x:auto;padding-bottom:12px;min-height:400px}.kanban-column{flex:0 0 260px;min-width:220px;background:#f5f3ff;border-radius:var(--radius);border-top:4px solid #9ca3af;display:flex;flex-direction:column;max-height:calc(100vh - 240px)}.kanban-column-header{padding:12px 14px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(108,92,231,.08);flex-shrink:0}.kanban-stage-label{font-size:13.5px;font-weight:700;color:var(--text)}.kanban-count{background:#6c5ce726;color:var(--primary);font-size:11px;font-weight:600;padding:2px 8px;border-radius:10px}.kanban-cards{padding:10px;flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:8px}.kanban-empty{text-align:center;color:var(--text-light);font-size:13.5px;padding:20px 0;opacity:.6}.kanban-card{background:var(--card);border-radius:10px;padding:12px 14px;box-shadow:var(--shadow);border:1.5px solid transparent;cursor:default;transition:transform .15s,box-shadow .2s,border-color .15s;position:relative}.kanban-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:var(--primary-light)}.kanban-card.pinned{border-left:3px solid var(--urgent)}.pin-badge{position:absolute;top:-6px;right:-4px;font-size:14px;z-index:1;filter:drop-shadow(0 1px 2px rgba(0,0,0,.15))}.kanban-card-title{font-size:14px;font-weight:700;color:var(--text);margin-bottom:2px;line-height:1.3;word-break:break-word}.kanban-card-sub{font-size:13.5px;color:var(--primary-mid);margin-bottom:6px}.kanban-card-meta{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:6px}.kanban-card-date{font-size:11px;color:var(--text-light);margin-bottom:8px}.kanban-card-actions{display:flex;align-items:center;gap:4px;padding-top:8px;border-top:1px solid var(--border)}.stage-select{font-size:11px;padding:3px 6px;border:1px solid var(--border);border-radius:6px;color:var(--text-mid);background:#fff;cursor:pointer;flex:1;min-width:0}.stage-select:focus{outline:none;border-color:var(--primary-mid)}.btn-icon{background:none;border:none;font-size:14px;cursor:pointer;padding:3px 5px;border-radius:6px;transition:background .15s;line-height:1;white-space:nowrap}.btn-icon:hover{background:var(--primary-light)}.btn-icon-danger:hover{background:#ffe6e6}.tag{display:inline-block;font-size:10px;padding:1px 7px;border-radius:6px;background:#f0eeff;color:var(--primary);font-weight:500;white-space:nowrap}.amount-tag{background:#fff4e6;color:#e17055}.priority-tag{display:inline-block;font-size:10px;padding:1px 7px;border-radius:6px;font-weight:500}.priority-high{background:#ffe6e6;color:#d63031}.priority-medium{background:#fff9e6;color:#e17055}.priority-low{background:#e6fff4;color:#00b894}.priority-dot{font-size:11px;font-weight:500}.action-btns{display:flex;gap:4px}.cell-ellipsis{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-field{display:flex;flex-direction:column;gap:4px}.form-label{font-size:13.5px;font-weight:600;color:var(--text-mid)}.required{color:var(--urgent)}.form-select{width:100%;padding:8px 12px;border:1.5px solid var(--border);border-radius:10px;font-size:13.5px;color:var(--text);background:#fff;transition:border-color .2s;box-sizing:border-box;font-family:inherit}.form-select:focus{outline:none;border-color:var(--primary-mid);box-shadow:0 0 0 4px #6c5ce71f}.form-textarea{width:100%;padding:8px 12px;border:1.5px solid var(--border);border-radius:10px;font-size:13.5px;color:var(--text);background:#fff;resize:vertical;transition:border-color .2s;box-sizing:border-box;font-family:inherit}.form-textarea:focus{outline:none;border-color:var(--primary-mid);box-shadow:0 0 0 4px #6c5ce71f}.toggle-switch{position:relative;display:inline-block;width:44px;height:24px;cursor:pointer}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--border);border-radius:24px;transition:.2s}.toggle-slider:before{content:"";position:absolute;height:18px;width:18px;left:3px;bottom:3px;background:#fff;border-radius:50%;transition:.2s;box-shadow:0 1px 3px #00000026}.toggle-switch input:checked+.toggle-slider{background:var(--primary)}.toggle-switch input:checked+.toggle-slider:before{transform:translate(20px)}.pomodoro-page{padding:20px;max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1fr 380px;gap:24px}@media (max-width: 900px){.pomodoro-page{grid-template-columns:1fr}}.pomodoro-card{background:var(--card);border-radius:16px;padding:32px 24px;box-shadow:var(--shadow);text-align:center}.pomodoro-title{font-size:24px;font-weight:700;margin:0 0 20px;background:linear-gradient(135deg,#ec4899,#f59e0b);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.pomodoro-modes{display:flex;gap:8px;justify-content:center;margin-bottom:24px;flex-wrap:wrap}.mode-chip{padding:8px 16px;border:1.5px solid var(--border);border-radius:20px;background:var(--bg);color:var(--text);cursor:pointer;font-size:13.5px;font-weight:500;transition:all .2s}.mode-chip:hover{border-color:var(--primary)}.mode-chip.active{font-weight:600;box-shadow:0 2px 8px #0000001a}.timer-ring-wrap{position:relative;width:320px;height:320px;margin:0 auto 20px}.timer-text{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none}.time-display{font-size:64px;font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:-2px}.mode-label{font-size:16px;font-weight:500;margin-top:8px;opacity:.85}.task-input-wrap{display:flex;gap:8px;max-width:360px;margin:0 auto 20px}.task-input{flex:1;padding:10px 14px;border:1.5px solid var(--border);border-radius:10px;font-size:14px;background:var(--bg);color:var(--text)}.task-input:focus{outline:none;border-color:var(--primary)}.task-confirm-btn{padding:10px 18px;background:var(--primary);color:#fff;border:none;border-radius:10px;font-weight:600;cursor:pointer}.pomodoro-controls{display:flex;gap:10px;justify-content:center;margin-bottom:24px;flex-wrap:wrap}.ctrl-btn{padding:12px 24px;border:1.5px solid var(--border);border-radius:12px;background:var(--card);color:var(--text);font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.ctrl-btn:hover{transform:translateY(-1px);box-shadow:0 4px 8px #00000014}.ctrl-btn.primary{color:#fff;border-color:transparent;box-shadow:0 4px 12px #00000026}.ctrl-btn.pause{background:#f59e0b;color:#fff;border-color:transparent}.pomodoro-stats{display:flex;align-items:center;justify-content:center;gap:20px;padding:16px;background:var(--bg-hover);border-radius:12px}.stat-item{text-align:center}.stat-value{font-size:28px;font-weight:700;color:var(--primary)}.stat-label{font-size:13.5px;color:var(--text-light);margin-top:2px}.stat-divider{width:1px;height:40px;background:var(--border)}.pomodoro-history{background:var(--card);border-radius:16px;padding:24px;box-shadow:var(--shadow);max-height:720px;overflow-y:auto}.pomodoro-history h3{font-size:16px;font-weight:600;margin:0 0 16px;color:var(--text)}.pomodoro-history ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.history-item{display:grid;grid-template-columns:28px 1fr auto auto;align-items:center;gap:10px;padding:10px 12px;background:var(--bg-hover);border-radius:8px;font-size:13.5px}.history-item.mode-short,.history-item.mode-long{background:#6366f114}.history-mode{font-size:16px}.history-task{color:var(--text);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.history-time{color:var(--text-light);font-size:13.5px;font-variant-numeric:tabular-nums}.history-dur{color:var(--primary);font-weight:600;font-size:13.5px}.empty-tip{text-align:center;color:var(--text-light);font-size:13.5px;padding:20px 0}.topbar-hamburger{display:none;background:none;border:none;cursor:pointer;font-size:20px;color:var(--primary);padding:4px 8px;margin-right:4px;border-radius:8px}.topbar-hamburger:hover{background:var(--primary-light)}.mobile-scrim{display:none}@media (max-width: 768px){.topbar-hamburger{display:block}.topbar-date{display:none}.topbar-theme-toggle{font-size:11px!important;padding:4px 8px!important}.sidebar{position:fixed;left:0;top:0;bottom:0;z-index:300;width:min(280px,82vw);transform:translate(-100%);transition:transform .28s ease;flex-direction:column;height:100%}.sidebar.mobile-open{transform:translate(0)}.sidebar.collapsed{width:min(280px,82vw)}.sidebar-nav{flex-direction:column;overflow-x:hidden;overflow-y:auto;padding:8px 0;align-items:stretch;-webkit-overflow-scrolling:touch}.sidebar-header{width:100%;border-right:none;border-bottom:1px solid rgba(255,255,255,.15)}.nav-sort-row{flex-direction:column;width:100%}.nav-item,.nav-group-header{padding:12px 16px}.collapse-btn{display:none}.mobile-scrim{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:290;opacity:0;pointer-events:none;transition:opacity .28s ease}.mobile-scrim.show{opacity:1;pointer-events:auto}.main-content{padding:16px 12px}.stats-grid{grid-template-columns:repeat(2,1fr)!important}.stat-card{padding:12px!important}.card-body{padding:12px 14px!important}.table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}table{min-width:560px}.page-header{flex-direction:column;align-items:flex-start!important;gap:10px}.page-header .btn{width:100%}}@media (max-width: 480px){.stats-grid{grid-template-columns:1fr 1fr!important;gap:8px}.main-content{padding:12px 8px}.topbar-title{font-size:14px}}.btn:active{transform:translateY(1px) scale(.98);box-shadow:none}.btn-primary:active,.btn-danger:active,.btn-done:active{filter:brightness(.92)}.table-wrap{position:relative}.table-wrap thead th{position:sticky;top:0;z-index:5;background:#f3f0ff}.table-wrap table{margin-bottom:0}td,th,.btn-sm,.badge,.page-subtitle,label{font-size:13.5px}.badge{font-size:13.5px!important}.module-ribbon{height:4px;padding:0;display:block;overflow:hidden;border-radius:0;margin-bottom:14px}.module-ribbon .ribbon-emoji,.module-ribbon .ribbon-role,.module-ribbon .ribbon-label{display:none}.empty-state{padding:48px 20px;text-align:center}.empty-icon{font-size:40px;margin-bottom:10px;opacity:.5}.empty-text{font-size:14px;color:var(--text-light)}.empty-action{margin-top:14px}.confirm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:1500;padding:20px;animation:fadeIn .2s ease}.confirm-card{background:var(--card);border-radius:16px;padding:26px 30px;max-width:380px;width:100%;text-align:center;box-shadow:var(--shadow-md);animation:modalPop .22s ease}.confirm-icon{font-size:38px;margin-bottom:10px}.confirm-title{font-size:16px;font-weight:600;color:var(--text);margin-bottom:8px}.confirm-message{font-size:13.5px;color:var(--text-mid);line-height:1.7;margin-bottom:20px;word-break:break-word}.confirm-actions{display:flex;gap:10px;justify-content:center}@keyframes modalPop{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@media (max-width: 768px){.table-wrap table{min-width:0}.table-wrap thead{display:none}.table-wrap tbody{display:flex;flex-direction:column;gap:10px;padding:10px 0}.table-wrap tbody tr{display:grid;grid-template-columns:1fr 1fr;gap:6px 14px;background:var(--card);border:1px solid var(--border);border-radius:12px;padding:12px 14px;box-shadow:var(--shadow)}.table-wrap tbody tr:hover{background:var(--card)}.table-wrap tbody tr:nth-child(2n){background:var(--card)}.table-wrap tbody td{display:flex;flex-direction:column;gap:2px;padding:4px 0;border:none;font-size:13.5px}.table-wrap tbody td:before{content:attr(data-label);font-size:11px;color:var(--text-light);font-weight:600}.table-wrap tbody td:last-child{grid-column:1 / -1}.table-wrap tbody td .btn{align-self:flex-start}}@media (max-width: 768px){.contact-edit-row{grid-template-columns:1fr!important}}@media (max-width: 768px){.btn,.btn-sm,.btn-ghost,.btn-done,.btn-primary,.btn-danger{min-height:40px;padding-top:8px;padding-bottom:8px}.btn-sm{padding:8px 14px}.btn-icon{min-width:40px;min-height:40px;padding:8px 10px}.form-input,.form-select,.form-control,input[type=text],input[type=number],input[type=date],input[type=email],input[type=password],input[type=tel],input[type=search],textarea,select{font-size:16px!important}}.todo-quadrant-grid{display:grid;grid-template-columns:1fr 1fr;align-items:start}@media (max-width: 768px){.todo-quadrant-grid{grid-template-columns:1fr}}.todo-item-actions{opacity:0;transition:opacity .15s ease}.todo-item:hover .todo-item-actions{opacity:1}@media (max-width: 768px){.todo-item-actions{opacity:1}}@media (max-width: 768px){.main-content{padding:12px!important}.page-header{flex-direction:column;align-items:flex-start;gap:8px}.page-title{font-size:17px!important}.page-subtitle{font-size:13.5px!important}[style*="gridTemplateColumns: 1fr 1fr"],[style*="grid-template-columns: 1fr 1fr"]{grid-template-columns:1fr!important}.table-wrap,.table-responsive,[class*=table-wrap],[class*=table-container]{overflow-x:auto;-webkit-overflow-scrolling:touch}.grid-2,.grid-3,.grid-4{grid-template-columns:1fr!important}.page-actions,[class*=page-actions]{flex-wrap:wrap;gap:8px}.modal-content,[class*=modal-content]{max-width:95vw!important;margin:0 auto}.form-control,.form-select,input.form-control,select.form-control,textarea.form-control{font-size:15px!important;min-height:40px}.btn{padding:9px 14px}.amount,[class*=amount]{white-space:nowrap}}@media (max-width: 768px){[data-mobile-hide]{display:none!important}}:root{--primary: #6B8FAB;--primary-mid: #8AA8BF;--primary-light: #EDF3F8;--accent: #5A6FA8;--accent-warm: #B08D57;--bg: #F5F7FA;--card: #FFFFFF;--border: #E3E9F0;--text: #1F2B33;--text-mid: #4E5E6E;--text-light: #71828F;--urgent: #C05A4C;--attention: #B08D57;--overdue: #B04A42;--done: #5E8C7A;--info: #5A6FA8;--urgent-bg: #FAEFED;--attention-bg: #F7F0E5;--done-bg: #EDF3EF;--overdue-bg: #F8ECEB;--info-bg: #EEF1F8;--sidebar-w: 240px;--sidebar-w-collapsed: 60px;--topbar-h: 56px;--radius: 12px;--shadow: 0 1px 3px rgba(43,58,69,.06), 0 1px 2px rgba(43,58,69,.04);--shadow-md: 0 4px 12px rgba(43,58,69,.08);--shadow-lg: 0 10px 28px rgba(43,58,69,.12);--gradient-sidebar: linear-gradient(180deg, #2B4B8F 0%, #4F7AC9 100%);--gradient-hero: linear-gradient(135deg, #2B4B8F 0%, #4F7AC9 100%);--font-cute: "Noto Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif}body{font-family:var(--font-cute);background-color:var(--bg);color:var(--text);font-weight:400}.page-title,.card-title,.stat-label,.modal-title,.topbar-title,.kanban-stage-label,.ribbon-role,.ribbon-label{letter-spacing:.3px}.main-content{--primary: var(--module-color, #6B8FAB);--primary-mid: var(--module-color, #8AA8BF);--primary-light: var(--module-color-light, #FFE0DC);--accent: var(--module-color, #B08D57)}.main-content .page-title{color:var(--primary)}.main-content .btn-primary{background:var(--primary)}.main-content .btn-primary:hover{background:var(--module-color-dark, #4A6E8A);transform:translateY(-2px);box-shadow:0 6px 14px #00000026}.main-content .btn-ghost{color:var(--primary);border-color:var(--primary-light)}.main-content .btn-ghost:hover{background:var(--primary-light)}.main-content .card{border-top:4px solid var(--primary)}.main-content th{background:var(--primary-light);border-bottom:2px solid var(--primary);color:var(--text)}.main-content tr:hover td{background:var(--primary-light)}.module-ribbon{display:inline-flex;align-items:center;gap:10px;padding:9px 20px 9px 16px;border-radius:0 12px 12px 0;color:#fff;font-weight:600;font-size:14px;box-shadow:var(--shadow-md);margin-bottom:20px;position:relative;-webkit-user-select:none;user-select:none}.ribbon-emoji{font-size:22px;line-height:1;filter:drop-shadow(0 1px 1px rgba(0,0,0,.15))}.ribbon-role{font-weight:600;text-shadow:0 1px 0 rgba(0,0,0,.15)}.ribbon-label{font-weight:500;opacity:.92}.ribbon-label:before{content:"·";margin:0 6px;opacity:.7}.sidebar{background:var(--gradient-sidebar);box-shadow:4px 0 #00000014}.logo-icon{filter:drop-shadow(0 2px 2px rgba(0,0,0,.25))}.logo-text{font-weight:800;text-shadow:0 2px 0 rgba(0,0,0,.2);letter-spacing:.5px}.nav-item{font-weight:600;border-radius:12px;margin:3px 8px;padding:11px 14px}.nav-item.active{background:#fff!important;color:#6b8fab!important;font-weight:800;border-radius:12px!important;margin:3px 8px!important;box-shadow:var(--shadow);transform:translateY(-1px)}.nav-group-header{border-radius:12px;margin:3px 8px;padding:11px 14px}.nav-group-children .nav-child{border-radius:12px!important;margin:2px 8px!important;padding:10px 14px 10px 40px!important}.nav-group-children .nav-child.active{background:#fff!important;color:#6b8fab!important}.nav-icon{filter:drop-shadow(0 1px 1px rgba(0,0,0,.2))}.sort-arrow-btn,.sort-toggle-btn,.sort-action-btn{border-radius:10px!important;font-weight:700!important}.sort-action-btn.primary{background:#ffffffe6!important;color:#6b8fab!important}.topbar{border-bottom:3px solid var(--border)}.topbar-title{font-weight:800;color:var(--primary);display:flex;align-items:center;gap:8px;text-shadow:0 1px 0 rgba(0,0,0,.04)}.topbar-mario{font-size:20px;filter:drop-shadow(0 2px 2px rgba(0,0,0,.15))}.btn{border:2px solid rgba(0,0,0,.1);border-radius:12px;font-weight:700;box-shadow:var(--shadow);letter-spacing:.3px}.btn:hover{transform:translateY(-2px)}.btn:active{transform:translateY(1px);box-shadow:0 1px 2px #0000001a}.btn-primary{box-shadow:var(--shadow)}.btn-danger,.btn-done{border-color:#0000001a}.card{border:2px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.card-header{border-bottom:2px solid var(--border)}.card-title{color:var(--text);font-weight:700}.stat-card{border:2px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.stat-card:hover{box-shadow:var(--shadow-md);transform:translateY(-3px) rotate(-.5deg)}.stat-num{color:var(--primary);text-shadow:2px 2px 0 rgba(107,143,171,.08)}.reminder-card{border:2px solid var(--border);box-shadow:var(--shadow);border-radius:var(--radius)}.reminder-card:hover{box-shadow:var(--shadow-md);transform:translateY(-3px) rotate(.5deg)}.modal-overlay{background:#3d281759;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.modal{border:3px solid var(--border);border-radius:22px;box-shadow:var(--shadow-lg)}.modal-header{border-bottom:2px solid var(--border)}.modal-title{color:var(--primary);font-weight:800}.modal-close{background:var(--primary-light);border:2px solid rgba(0,0,0,.08);font-weight:800;box-shadow:var(--shadow)}.modal-close:hover{background:var(--primary);color:#fff;transform:rotate(90deg)}.form-control,.form-input,.form-select,.form-textarea,.search-input,.filter-select{border:2px solid var(--border);border-radius:12px;font-weight:500}.form-control:focus,.form-input:focus,.form-select:focus,.form-textarea:focus,.search-input:focus,.filter-select:focus{border-color:var(--primary-mid);box-shadow:0 0 0 4px var(--primary-light)}.form-label{color:var(--text-mid);font-weight:700}.badge{border:1px solid transparent;font-weight:500;box-shadow:var(--shadow)}.badge-urgent,.badge-overdue,.badge-done,.badge-attention{box-shadow:var(--shadow)}.kanban-column{background:#fff3e9;border:2px solid var(--border);border-top:5px solid var(--primary);border-radius:var(--radius);box-shadow:var(--shadow)}.kanban-stage-label{color:var(--text)}.kanban-count{background:var(--primary-light);color:var(--primary);font-weight:700}.kanban-card{border:2px solid var(--border);border-radius:12px;box-shadow:var(--shadow)}.kanban-card:hover{transform:translateY(-3px) rotate(.4deg);box-shadow:var(--shadow-md)}.tag{background:var(--primary-light);color:var(--primary);font-weight:600}.toggle-slider{border:2px solid rgba(0,0,0,.08)}.toggle-switch input:checked+.toggle-slider{background:var(--primary);box-shadow:2px 2px #0000001f}::-webkit-scrollbar-thumb{background:var(--primary-mid);border-radius:6px}::-webkit-scrollbar-thumb:hover{background:var(--primary)}.empty-icon{filter:drop-shadow(0 3px 4px rgba(0,0,0,.12))}.empty-text{color:var(--text-light);font-weight:600}.toast{border-radius:10px;border:1px solid rgba(0,0,0,.06);box-shadow:var(--shadow-md);font-weight:500}.cond-item{border:2px solid var(--border);border-radius:12px;box-shadow:var(--shadow)}.cond-item:hover{transform:scale(1.015);box-shadow:var(--shadow-md)}.cond-checkbox{border:2px solid var(--primary-mid);border-radius:8px;box-shadow:1px 1px #0000001a}.cond-item.fulfilled .cond-checkbox{background:var(--done);border-color:var(--done);box-shadow:2px 2px #0000001f}.pomodoro-card,.pomodoro-history{border:2px solid var(--border);border-radius:22px;box-shadow:var(--shadow)}.pomodoro-title{background:linear-gradient(135deg,#6b8fab,#b08d57);-webkit-background-clip:text;-webkit-text-fill-color:transparent;text-shadow:none;font-weight:800}.ctrl-btn{border:2px solid var(--border);border-radius:12px;font-weight:700;box-shadow:var(--shadow)}.ctrl-btn.primary,.ctrl-btn.pause{box-shadow:3px 3px #00000026}[data-module="/approvals"] .stat-card:nth-child(1){border-left:6px solid #B08D57}[data-module="/ratings"] .stat-card:nth-child(1){border-left:6px solid #B08D57}[data-module="/credit-business"] .stat-card:nth-child(1){border-left:6px solid #B08D57}[data-module="/wealth-products"] .stat-card:nth-child(1){border-left:6px solid #5A6FA8}@media (max-width: 768px){.module-ribbon{border-radius:0 12px 12px 0;font-size:13px;padding:7px 14px}.nav-item{border-radius:12px}}.welcome-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;display:flex;align-items:center;justify-content:center;overflow:hidden;animation:fadeIn .5s ease}.welcome-overlay.exit{animation:fadeOut .5s ease forwards}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.welcome-overlay.theme-mario{background:linear-gradient(135deg,#6b8fab,#8aa8bf,#b08d57 70%,#fff8f0)}.welcome-overlay.theme-ccb,.welcome-overlay.theme-lagoon{background:linear-gradient(135deg,#4a6e8a,#6b8fab,#8aa8bf 70%,#f5f7fa)}.welcome-particles{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.welcome-particles .wp{position:absolute;opacity:.6;animation:floatParticle 4s ease-in-out infinite}@keyframes floatParticle{0%,to{transform:translateY(0) rotate(0);opacity:.35}30%{transform:translateY(-30px) rotate(15deg);opacity:.7}60%{transform:translateY(15px) rotate(-10deg);opacity:.5}}.welcome-stripes{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;display:flex;flex-direction:column}.welcome-stripes .stripe{flex:1;animation:stripeSlide .8s cubic-bezier(.25,.46,.45,.94) both}@keyframes stripeSlide{0%{transform:translate(-100%);opacity:0}to{transform:translate(0);opacity:1}}.welcome-stripes.mario .stripe{background:linear-gradient(90deg,rgba(107,143,171,.15),rgba(176,141,87,.08),transparent);border-bottom:2px dashed rgba(255,255,255,.15)}.welcome-stripes.ccb .stripe{background:linear-gradient(90deg,rgba(0,82,217,.15),rgba(201,160,99,.1),transparent);border-bottom:2px solid rgba(255,255,255,.12)}.welcome-stripes.lagoon .stripe{background:linear-gradient(90deg,rgba(1,121,135,.16),rgba(138,155,95,.1),transparent);border-bottom:2px solid rgba(255,255,255,.12)}.welcome-card{position:relative;z-index:1;width:440px;max-width:90vw;padding:56px 40px 40px;background:#fffffff2;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-radius:32px;text-align:center;box-shadow:0 20px 60px #0000001f,8px 8px #6b8fab1f;border:3px solid rgba(255,255,255,.6);animation:popIn .7s cubic-bezier(.34,1.56,.64,1) .3s both}@keyframes popIn{0%{transform:scale(.8) translateY(30px);opacity:0}to{transform:scale(1) translateY(0);opacity:1}}.welcome-aura{position:absolute;top:-30px;right:-30px;bottom:-30px;left:-30px;pointer-events:none}.aura-ring{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:40px;border:3px solid transparent;animation:auraPulse 2.5s ease-in-out infinite}.ring-1{animation-delay:0s;border-color:#6b8fab1f}.ring-2{animation-delay:.8s;border-color:#b08d571f}.ring-3{animation-delay:1.6s;border-color:#43b0471a}@keyframes auraPulse{0%,to{transform:scale(1);opacity:.5}50%{transform:scale(1.04);opacity:1}}body.theme-ccb .ring-1{border-color:#0052d926}body.theme-ccb .ring-2{border-color:#3e7bfa1f}body.theme-ccb .ring-3{border-color:#c9a0631f}body.theme-lagoon .ring-1{border-color:#01798726}body.theme-lagoon .ring-2{border-color:#2a9db81f}body.theme-lagoon .ring-3{border-color:#8a9b5f1f}.welcome-mascot{font-size:80px;margin-bottom:16px;animation:mascotBounce 1.2s ease-in-out infinite;filter:drop-shadow(4px 6px 8px rgba(0,0,0,.15))}@keyframes mascotBounce{0%,to{transform:translateY(0) scale(1)}40%{transform:translateY(-12px) scale(1.08)}70%{transform:translateY(-4px) scale(.97)}}.welcome-title{font-size:30px;font-weight:900;color:#6b8fab;margin-bottom:8px;text-shadow:2px 3px 0 rgba(107,143,171,.15);animation:titleSlide .6s ease .4s both}@keyframes titleSlide{0%{transform:translateY(12px);opacity:0}to{transform:translateY(0);opacity:1}}.welcome-subtitle{font-size:15px;color:#8d6e63;margin-bottom:24px;animation:titleSlide .6s ease .5s both}.welcome-date{display:inline-block;padding:10px 22px;background:#6b8fab14;border-radius:24px;font-size:14px;color:#4a6e8a;font-weight:500;margin-bottom:28px;animation:titleSlide .6s ease .55s both}.welcome-enter-btn{padding:14px 48px;background:linear-gradient(135deg,#6b8fab,#8aa8bf);color:#fff;border:none;border-radius:28px;font-size:17px;font-weight:800;cursor:pointer;box-shadow:4px 4px #6b8fab40,0 8px 24px #6b8fab33;transition:all .25s;animation:titleSlide .6s ease .6s both;letter-spacing:1px}.welcome-enter-btn:hover{transform:translateY(-3px);box-shadow:6px 6px #6b8fab4d,0 12px 32px #6b8fab47}.welcome-enter-btn:active{transform:translateY(0);box-shadow:2px 2px #6b8fab33,0 4px 12px #6b8fab26}body.theme-ccb .welcome-card{border-color:#ffffffbf;box-shadow:0 20px 60px #0028781f,6px 6px #c9a0632e}body.theme-ccb .welcome-title{color:#4a6e8a;text-shadow:2px 3px 0 rgba(0,82,217,.12)}body.theme-ccb .welcome-date{background:#0052d914;color:#1d39c4}body.theme-ccb .welcome-enter-btn{background:linear-gradient(135deg,#4a6e8a,#6b8fab);color:#fff;box-shadow:4px 4px #c9a06359,0 8px 24px #0052d940}body.theme-ccb .welcome-enter-btn:hover{box-shadow:6px 6px #c9a06366,0 12px 32px #0052d952}body.theme-lagoon .welcome-card{border-color:#ffffffbf;box-shadow:0 20px 60px #01505a1f,6px 6px #2a9db82e}body.theme-lagoon .welcome-title{color:#4a6e8a;text-shadow:2px 3px 0 rgba(1,121,135,.12)}body.theme-lagoon .welcome-date{background:#01798714;color:#4a6e8a}body.theme-lagoon .welcome-enter-btn{background:linear-gradient(135deg,#4a6e8a,#6b8fab);color:#fff;box-shadow:4px 4px #8a9b5f59,0 8px 24px #01798740}body.theme-lagoon .welcome-enter-btn:hover{box-shadow:6px 6px #8a9b5f66,0 12px 32px #01798752}body.theme-ccb{--primary: #6B8FAB;--primary-mid: #8AA8BF;--primary-light: #EDF3F8;--accent: #B08D57;--accent-warm: #B8860B;--bg: #F4F6FA;--card: #FFFFFF;--border: #DFE5EE;--text: #1F2B33;--text-mid: #4E5E6E;--text-light: #71828F;--urgent: #D64545;--attention: #E67E22;--overdue: #C0392B;--done: #00A381;--info: #0052D9;--urgent-bg: #FEF0EF;--attention-bg: #FFF7E6;--done-bg: #E6F7F1;--overdue-bg: #FCE8E8;--info-bg: #E8F0FE;--radius: 10px;--shadow: 0 1px 3px rgba(20,32,58,.06), 0 1px 2px rgba(20,32,58,.04);--shadow-md: 0 4px 12px rgba(20,32,58,.08);--shadow-lg: 0 10px 28px rgba(20,32,58,.12);--gradient-sidebar: linear-gradient(180deg, #4A6E8A 0%, #6B8FAB 100%);--gradient-hero: linear-gradient(135deg, #4A6E8A 0%, #8AA8BF 100%)}body.theme-ccb{background-color:var(--bg)}body.theme-ccb .sidebar{background:var(--gradient-sidebar);border-right:none;box-shadow:none}body.theme-ccb .logo-text{color:#fff}body.theme-ccb .collapse-btn{color:#ffffffd9;background:#ffffff1f}body.theme-ccb .nav-item{color:#ffffffd1}body.theme-ccb .nav-item:hover{background:#ffffff1f;box-shadow:none}body.theme-ccb .nav-item.active{background:linear-gradient(90deg,#6b8fab4d,#ffffff1f);color:#fff;box-shadow:none;border-left:3px solid #6B8FAB}body.theme-ccb .nav-group-header{color:#ffffffd1}body.theme-ccb .nav-group-header:hover{background:#ffffff1f}body.theme-ccb .nav-group-children.open{background:#ffffff0f}body.theme-ccb .topbar{background:#fff;border-bottom:2px solid #6B8FAB;box-shadow:none}body.theme-ccb .topbar-title{color:var(--text)}body.theme-ccb .topbar-date{color:var(--text-light)}body.theme-ccb .module-ribbon{box-shadow:none;border-radius:0 0 8px 8px;background:var(--gradient-hero)}body.theme-ccb .ribbon-role,body.theme-ccb .ribbon-label{color:#fff}body.theme-ccb .card,body.theme-ccb .stat-card,body.theme-ccb .dashboard-card{border:1px solid var(--border);box-shadow:var(--shadow);border-radius:var(--radius)}body.theme-ccb .card:hover,body.theme-ccb .stat-card:hover,body.theme-ccb .dashboard-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}body.theme-ccb .btn-primary,body.theme-ccb button.primary,body.theme-ccb .sort-action-btn.primary{background:var(--primary);color:#fff;border:none;box-shadow:none}body.theme-ccb .btn-primary:hover,body.theme-ccb button.primary:hover,body.theme-ccb .sort-action-btn.primary:hover{background:#4a6e8a;box-shadow:none}body.theme-ccb .theme-toggle-btn,body.theme-ccb .topbar-theme-toggle{background:var(--primary-light);border:1px solid var(--border);color:var(--primary)}body.theme-ccb input,body.theme-ccb select,body.theme-ccb textarea{border:1.5px solid var(--border);border-radius:8px}body.theme-ccb input:focus,body.theme-ccb select:focus,body.theme-ccb textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px #6b8fab26;outline:none}body.theme-ccb table th{background:#f0f4fb;color:var(--text-mid)}body.theme-ccb table tr:hover{background:#fafcff}body.theme-ccb ::-webkit-scrollbar-thumb{background:#c3cfdc;border-radius:8px}body.theme-ccb ::-webkit-scrollbar-thumb:hover{background:#a3b2c2}body.theme-lagoon{--primary: #6B8FAB;--primary-mid: #8AA8BF;--primary-light: #EDF3F8;--accent: #B08D57;--accent-warm: #8A9B5F;--bg: #F4F8F9;--card: #FFFFFF;--border: #DCE7EA;--text: #1F2B33;--text-mid: #4E5E6E;--text-light: #71828F;--urgent: #D64545;--attention: #E67E22;--overdue: #C0392B;--done: #00818A;--info: #017987;--urgent-bg: #FEF0EF;--attention-bg: #FFF7E6;--done-bg: #E3F2F3;--overdue-bg: #FCE8E8;--info-bg: #E6F4F7;--radius: 12px;--shadow: 0 1px 3px rgba(16,50,58,.06), 0 1px 2px rgba(16,50,58,.04);--shadow-md: 0 4px 12px rgba(16,50,58,.08);--shadow-lg: 0 10px 28px rgba(16,50,58,.12);--gradient-sidebar: linear-gradient(180deg, #4A6E8A 0%, #6B8FAB 100%);--gradient-hero: linear-gradient(135deg, #4A6E8A 0%, #8AA8BF 100%)}body.theme-lagoon{background-color:var(--bg)}body.theme-lagoon .sidebar{background:var(--gradient-sidebar);border-right:none;box-shadow:none}body.theme-lagoon .logo-text{color:#fff}body.theme-lagoon .collapse-btn{color:#ffffffd9;background:#ffffff1f}body.theme-lagoon .nav-item{color:#ffffffd1}body.theme-lagoon .nav-item:hover{background:#ffffff1f;box-shadow:none}body.theme-lagoon .nav-item.active{background:linear-gradient(90deg,#6b8fab4d,#ffffff1f);color:#fff;box-shadow:none;border-left:3px solid #6B8FAB}body.theme-lagoon .nav-group-header{color:#ffffffd1}body.theme-lagoon .nav-group-header:hover{background:#ffffff1f}body.theme-lagoon .nav-group-children.open{background:#ffffff0f}body.theme-lagoon .topbar{background:#fff;border-bottom:2px solid #6B8FAB;box-shadow:none}body.theme-lagoon .topbar-title{color:var(--text)}body.theme-lagoon .topbar-date{color:var(--text-light)}body.theme-lagoon .module-ribbon{box-shadow:none;border-radius:0 0 10px 10px;background:var(--gradient-hero)}body.theme-lagoon .ribbon-role,body.theme-lagoon .ribbon-label{color:#fff}body.theme-lagoon .card,body.theme-lagoon .stat-card,body.theme-lagoon .dashboard-card{border:1px solid var(--border);box-shadow:var(--shadow);border-radius:var(--radius)}body.theme-lagoon .card:hover,body.theme-lagoon .stat-card:hover,body.theme-lagoon .dashboard-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}body.theme-lagoon .btn-primary,body.theme-lagoon button.primary,body.theme-lagoon .sort-action-btn.primary{background:var(--primary);color:#fff;border:none;box-shadow:none}body.theme-lagoon .btn-primary:hover,body.theme-lagoon button.primary:hover,body.theme-lagoon .sort-action-btn.primary:hover{background:#4a6e8a;box-shadow:none}body.theme-lagoon .theme-toggle-btn,body.theme-lagoon .topbar-theme-toggle{background:var(--primary-light);border:1px solid var(--border);color:var(--primary)}body.theme-lagoon input,body.theme-lagoon select,body.theme-lagoon textarea{border:1.5px solid var(--border);border-radius:9px}body.theme-lagoon input:focus,body.theme-lagoon select:focus,body.theme-lagoon textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px #6b8fab26;outline:none}body.theme-lagoon table th{background:#eff5f6;color:var(--text-mid)}body.theme-lagoon table tr:hover{background:#fafcfc}body.theme-lagoon ::-webkit-scrollbar-thumb{background:#c3cfdc;border-radius:8px}body.theme-lagoon ::-webkit-scrollbar-thumb:hover{background:#a3b2c2}
