@font-face{font-family:Manrope;src:url('./fonts/manrope-400.ttf');font-weight:400;font-display:swap}@font-face{font-family:Manrope;src:url('./fonts/manrope-500.ttf');font-weight:500;font-display:swap}@font-face{font-family:Manrope;src:url('./fonts/manrope-600.ttf');font-weight:600;font-display:swap}@font-face{font-family:Manrope;src:url('./fonts/manrope-700.ttf');font-weight:700;font-display:swap}@font-face{font-family:Manrope;src:url('./fonts/manrope-800.ttf');font-weight:800;font-display:swap}
:root{--accent:#e5f21a;--accent-hover:#d5e311;--ink:#111313;--muted:#6a7478;--border:#e6e9eb;--bg:#f4f6f7;--white:#fff;--green:#26745b;--red:#b64445;--radius:14px;--shadow:0 14px 50px #17222a12;font-family:Manrope,Arial,sans-serif;color:var(--ink);background:var(--bg);font-synthesis:none;font-size:16px;line-height:1.5}
*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit;color:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}button,a,summary{touch-action:manipulation}a{color:inherit;text-decoration:none}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.48}button,input,select,textarea{border-radius:9px}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #899500;outline-offset:4px}input:focus,select:focus,textarea:focus{outline:2px solid #bcc81c;outline-offset:1px}input,select,textarea{border:1px solid var(--border);background:#fff;padding:11px 13px;min-height:44px;width:100%}textarea{resize:vertical;min-height:104px}input[type=checkbox],input[type=radio]{width:17px;min-height:17px;height:17px;accent-color:#687400;flex:none}input[type=color]{width:56px;padding:5px}input[type=checkbox]{cursor:pointer}h1,h2,h3,p{margin:0}h1{font-size:32px;letter-spacing:-1.25px;line-height:1.25;font-weight:800}h2{font-size:20px;letter-spacing:-.5px;font-weight:750}h3{font-size:16px;font-weight:750}p{line-height:1.7}small,.meta{font-size:12px;color:var(--muted)}.muted{color:var(--muted)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip{position:fixed;left:16px;top:-100px;background:var(--accent);padding:12px;z-index:200}.skip:focus{top:10px}.icon{width:19px;height:19px;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;vertical-align:middle;flex-shrink:0}.brand{display:flex;align-items:center;gap:11px;font-size:21px;letter-spacing:-.7px;font-weight:800;white-space:nowrap}.brand-mark{display:grid;place-items:center;background:var(--accent);border-radius:9px;width:36px;height:38px;color:#111;font-size:26px;font-weight:500}.topbar{height:78px;display:flex;align-items:center;gap:36px;padding:0 32px;background:white;border-bottom:1px solid var(--border);position:sticky;top:0;z-index:30}.topnav{display:flex;align-items:stretch;gap:24px;align-self:stretch}.topnav a{display:flex;align-items:center;gap:7px;font-size:14px;font-weight:650;border-bottom:3px solid transparent;padding-top:3px;white-space:nowrap}.topnav a:hover{color:#748000}.topnav a.active{border-color:var(--accent);color:var(--ink)}.count{font-size:12px;padding:1px 6px;background:#edf0f1;border-radius:5px}.topnav .active .count{background:#f2f7ba}.top-actions{display:flex;align-items:center;gap:12px;margin-left:auto}.search-icon{display:flex;align-items:center;gap:8px}.global-search{width:180px;font-size:13px;background:#f7f8f9;min-height:38px;border:0}.icon-btn{width:40px;height:40px;border:1px solid var(--border);background:white;display:inline-flex;align-items:center;justify-content:center;position:relative}.icon-btn:hover{background:#f3f5f6}.notification-dot{position:absolute;right:8px;top:7px;width:6px;height:6px;background:#cc633e;border:1px solid white;border-radius:50%}.avatar{display:inline-flex;align-items:center;justify-content:center;width:35px;height:35px;border-radius:50%;background:#eff1de;font-size:12px;font-weight:800;flex:none}.avatar.blue{background:#e1f0f6;color:#3a6170}.avatar.purple{background:#ece8f4;color:#6e5a86}.avatar.large{width:56px;height:56px;font-size:20px}.menu-button{display:none}.wrap{max-width:1600px;padding:32px;margin:auto;padding-bottom:100px}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:28px}.page-heading p{color:var(--muted);font-size:14px;margin-top:7px}.heading-count{font-weight:500;color:#7a8386;font-size:26px;margin-left:8px}.eyebrow{font-size:12px;letter-spacing:1.6px;text-transform:uppercase;font-weight:750;color:#687478;margin-bottom:10px}.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:1px solid var(--border);background:white;min-height:43px;padding:10px 16px;font-size:14px;font-weight:700;white-space:nowrap;border-radius:9px}.button:hover{background:#f7f8f9;border-color:#cfd4d7}.button.primary{background:var(--accent);border-color:var(--accent);color:#111}.button.primary:hover{background:var(--accent-hover)}.button.dark{background:var(--ink);color:white;border-color:var(--ink)}.button.danger{background:#fff5f4;color:var(--red);border-color:#f2d8d8}.button.small{min-height:34px;padding:6px 11px;font-size:12px}.button.quiet{background:transparent;border-color:transparent;color:var(--muted)}.actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.text-link{font-size:14px;font-weight:700;text-decoration:underline;text-decoration-color:#c4cc9d;text-underline-offset:4px}.text-link:hover{color:#788500}.panel{background:white;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.panel-head{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:22px 24px;border-bottom:1px solid var(--border)}.panel-body{padding:24px}.panel + .panel{margin-top:20px}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:26px}.stats.five{grid-template-columns:repeat(5,minmax(0,1fr))}.stat{border:1px solid var(--border);border-radius:var(--radius);padding:23px;background:white;min-height:142px}.stat-title{font-size:13px;color:var(--muted);display:flex;justify-content:space-between;gap:8px}.stat-value{font-size:32px;font-weight:800;letter-spacing:-1px;line-height:1.25;margin:10px 0 8px}.stat-note{font-size:12px;color:var(--muted)}.stat.featured{background:var(--ink);color:var(--accent);border-color:var(--ink)}.stat.featured .stat-title,.stat.featured .stat-note{color:#b6bfbb}.stat .warning{color:var(--red)}.positive{color:var(--green)}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:22px;align-items:start}.stack{display:flex;flex-direction:column;gap:20px}.stack .panel+.panel{margin:0}.table-scroll{overflow:auto;width:100%}table{border-collapse:collapse;width:100%;text-align:left;font-size:14px;white-space:nowrap}th{font-size:12px;font-weight:600;background:#fafbfc;color:#727d82;padding:14px 18px;border-bottom:1px solid var(--border)}th button{background:none;border:0;color:inherit;font-size:inherit;padding:0}td{padding:18px;border-bottom:1px solid #eef0f1;vertical-align:middle}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:#fafbf5}.row-pool{background:#fcfdf7}.person{display:flex;gap:12px;align-items:center}.person-text{display:flex;flex-direction:column;gap:4px}.person-text a{font-weight:750}.person-text a:hover{text-decoration:underline}.subline{font-size:12px;color:var(--muted);font-weight:400}.table-foot{display:flex;align-items:center;justify-content:space-between;padding:15px 20px;border-top:1px solid var(--border);gap:14px;color:var(--muted);font-size:12px}.pagination{display:flex;align-items:center;gap:7px}.pagination .current{background:var(--ink);color:white;border-color:var(--ink)}.badge{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;border-radius:5px;padding:5px 8px;background:color-mix(in srgb,var(--status,#6e7579) 10%,white);color:var(--status,#6e7579);white-space:nowrap}.badge:before{content:'';width:5px;height:5px;border-radius:50%;background:currentColor}.badge.neutral{background:#f0f2f4;color:#58626a}.badge.neutral:before{display:none}.pill{display:inline-block;padding:4px 8px;border-radius:5px;background:#f2f4f5;font-size:12px;color:#6b747a}.waiting{color:#a26b28;display:flex;align-items:center;gap:6px;font-size:12px}.pool-summary{padding:15px 24px;background:#fbfced;display:flex;gap:10px;align-items:center;font-size:13px;border-bottom:1px solid #eef0d9}.task-row{display:flex;align-items:flex-start;gap:12px;padding:19px 22px;border-bottom:1px solid #eef0f1}.task-row:last-child{border:0}.task-row input{margin-top:5px}.task-row .task-content{flex:1;min-width:0}.task-title{font-size:14px;font-weight:650;display:block;margin-bottom:5px}.task-time{font-size:12px;font-weight:650;color:#79818a}.task-time.overdue{color:var(--red)}.task-row.done .task-title{text-decoration:line-through;color:#7a8488}.task-row.done{opacity:.65}.mini-heading{font-size:11px;text-transform:uppercase;letter-spacing:1.2px;color:#92999c;padding:18px 22px 0;font-weight:700}.tabs{display:flex;gap:26px;border-bottom:1px solid var(--border);margin-bottom:22px;overflow-x:auto;white-space:nowrap}.tabs button,.tabs a{border:0;background:none;border-bottom:3px solid transparent;border-radius:0;padding:13px 0;color:var(--muted);font-size:14px;font-weight:650}.tabs .active{border-bottom-color:var(--accent);color:var(--ink)}.segmented{display:flex;gap:3px;padding:4px;border:1px solid var(--border);border-radius:10px;background:white}.segmented button,.segmented a{padding:7px 12px;font-size:13px;border:0;background:transparent;border-radius:6px;color:var(--muted)}.segmented .active{background:var(--ink);color:white}.filters{display:flex;gap:10px;align-items:center;margin-bottom:18px;flex-wrap:wrap}.filters input{max-width:250px}.filters select{width:auto;min-width:135px;font-size:13px}.filters .search-field{flex:1;min-width:200px;max-width:330px}.search-field{position:relative}.search-field input{padding-left:39px;max-width:none}.search-field .icon{position:absolute;left:13px;top:13px;color:#859096}.filter-details{margin:0 0 20px;border:1px solid var(--border);border-radius:10px;background:white;padding:14px 18px}.filter-details summary{font-size:13px;font-weight:650;cursor:pointer}.filter-details .form-grid{padding-top:18px}.checkbox-label{display:flex;align-items:center;gap:8px;font-size:13px}.bulk-toolbar{background:#f3f6ce;border:1px solid #e2e7ab;border-radius:10px;padding:10px 16px;display:flex;align-items:center;gap:12px;margin-bottom:14px;font-size:13px}.breadcrumb{display:flex;gap:8px;align-items:center;color:var(--muted);font-size:12px;margin-bottom:16px}.breadcrumb a:hover{color:var(--ink)}.detail-grid{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:24px;align-items:start}.detail-head{align-items:flex-start}.detail-head h1{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.detail-toolbar{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:22px}.banner{display:flex;gap:12px;align-items:center;justify-content:space-between;padding:15px 19px;border:1px solid #e5e9ac;background:#f7f9de;border-radius:10px;font-size:14px;margin-bottom:20px}.banner.info{background:#edf5f8;border-color:#d6e7ee;color:#386778}.banner.error{background:#fff1ef;border-color:#f2d7d3;color:#a5413c}.banner .icon{flex:none}.banner p{font-size:13px}.fields{display:grid;grid-template-columns:160px minmax(0,1fr);gap:17px 22px;font-size:14px}.fields dt{color:var(--muted)}.fields dd{margin:0;min-width:0;overflow-wrap:anywhere}.edit-value{border:0;background:none;text-align:left;padding:0;border-radius:0;font-size:14px}.edit-value:hover{text-decoration:underline;text-decoration-style:dashed;text-underline-offset:5px}.request-message{padding:17px 20px;background:#f6f7f8;border-radius:9px;font-size:14px;line-height:1.8;margin:17px 0}.section-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}.section-divider{border:0;border-top:1px solid var(--border);margin:24px 0}.accordion{border:1px solid var(--border);background:#fff;border-radius:12px;margin-top:14px}.accordion summary{display:flex;align-items:center;justify-content:space-between;padding:20px 23px;cursor:pointer;font-size:14px;font-weight:750;list-style:none}.accordion summary::-webkit-details-marker{display:none}.accordion summary:after{content:'+';font-size:20px;color:#879094;font-weight:400}.accordion[open] summary:after{content:'−'}.accordion .panel-body{padding-top:0}.comment-box{padding:22px 24px;border-bottom:1px solid var(--border)}.comment-box textarea{background:#fafbfc;font-size:14px}.comment-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:10px;gap:12px}.activity{padding:24px}.event{display:flex;gap:12px;padding-bottom:22px;position:relative}.event:not(:last-child):before{content:'';position:absolute;left:16px;top:36px;bottom:0;border-left:1px solid var(--border)}.event-icon{width:34px;height:34px;border-radius:50%;border:1px solid var(--border);display:grid;place-items:center;background:#fafbfc;flex:none;color:#899196}.event-text{font-size:13px;line-height:1.8;flex:1;min-width:0}.event-text strong{font-weight:750}.event-time{font-size:11px;color:#91989c}.comment{background:#f7f8f9;border-radius:10px;padding:13px 15px;margin-top:8px;font-size:14px}.board{display:flex;gap:16px;overflow-x:auto;padding-bottom:22px;min-height:520px;align-items:stretch}.board-column{width:280px;min-width:280px;background:#edf0f2;border-radius:12px;padding:14px;transition:width .2s}.board-column.final{width:62px;min-width:62px}.board-column.final .board-items{display:none}.board-column.final .column-heading{writing-mode:vertical-rl;height:250px;justify-content:flex-start;gap:14px}.board-column.expanded{width:280px;min-width:280px}.board-column.expanded .column-heading{writing-mode:horizontal-tb;height:auto}.board-column.expanded .board-items{display:block}.column-heading{display:flex;align-items:center;justify-content:space-between;font-size:13px;font-weight:750;padding:5px 3px 16px;gap:8px}.column-heading button{border:0;background:none;padding:0;display:flex;align-items:center;gap:8px;font-size:13px}.board-items{min-height:200px}.kanban-card{border:1px solid #e3e7e9;border-radius:10px;background:white;padding:17px;margin-bottom:10px;box-shadow:0 2px 3px #17222a03}.kanban-card[data-draggable=true]{cursor:grab}.kanban-card:hover{border-color:#b5bec2;box-shadow:0 5px 12px #17222a08}.kanban-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:9px;color:var(--muted);font-size:11px}.kanban-name{font-size:14px;font-weight:800;margin-bottom:4px;display:block}.kanban-service{font-size:12px;color:#6a7478;margin:12px 0}.kanban-footer{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #eef0f1;margin-top:15px;padding-top:12px;font-size:12px}.kanban-footer .avatar{width:25px;height:25px;font-size:9px}.kanban-card .button{width:100%;margin-top:12px}.sortable-ghost{opacity:.3;border:1px dashed #778600}.sortable-chosen{box-shadow:var(--shadow);transform:rotate(1deg)}.board-mobile-select{display:none}.settings-layout{display:grid;grid-template-columns:218px minmax(0,1fr);gap:28px}.settings-nav{display:flex;flex-direction:column;gap:4px;align-self:start}.settings-nav a{padding:11px 13px;border-radius:8px;font-size:14px;color:#677178;display:flex;align-items:center;gap:10px}.settings-nav a.active{background:#e9eed5;color:#283415;font-weight:750}.settings-nav a:hover{background:#e9ecee}.settings-nav-label{padding:18px 13px 7px;font-size:11px;letter-spacing:1px;text-transform:uppercase;color:#949c9f}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-grid .full{grid-column:1/-1}.field{display:flex;flex-direction:column;gap:7px;font-size:14px}.field label{font-size:13px;font-weight:650}.field-hint{font-size:12px;line-height:1.6;color:var(--muted)}.field-error{font-size:12px;color:var(--red);display:none}.field.invalid input,.field.invalid select,.field.invalid textarea{border-color:#cf6660}.field.invalid .field-error{display:block}.form-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:24px;border-top:1px solid var(--border);padding-top:20px}.form-actions.left{justify-content:flex-start}.settings-content{min-width:0}.narrow{max-width:850px}.settings-summary{display:flex;align-items:center;gap:20px;background:#f7f8f9;border-radius:10px;padding:18px;margin-bottom:24px}.settings-summary .avatar{border-radius:9px;width:47px;height:47px}.codebox{background:#141a1c;color:#d3e09b;border-radius:10px;padding:20px;white-space:pre-wrap;overflow-wrap:anywhere;font:12px/1.9 Consolas,monospace;max-width:100%;overflow:auto}.toggle-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:17px 0;border-bottom:1px solid var(--border)}.toggle-row:last-child{border:0}.switch{width:38px!important;height:22px!important;appearance:none;border-radius:22px;padding:0;position:relative;min-height:22px!important;background:#d8dfe2}.switch:before{content:'';position:absolute;width:16px;height:16px;border-radius:50%;background:white;top:2px;left:2px;box-shadow:0 1px 3px #0002;transition:left .15s}.switch:checked{background:#dbe81b;border-color:#cdd922}.switch:checked:before{left:18px;background:#28300c}.profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.notice-row{display:flex;align-items:flex-start;gap:16px;padding:22px 24px;border-bottom:1px solid var(--border)}.notice-row.unread{background:#fbfcee}.notice-row .event-text{font-size:14px}.notice-row time{color:var(--muted);font-size:12px;white-space:nowrap}.notification-menu{position:absolute;right:16px;top:65px;width:360px;background:white;border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow);z-index:50}.notification-menu .notice-row{padding:15px;font-size:13px}.user-menu{position:absolute;right:20px;top:65px;width:220px;border:1px solid var(--border);border-radius:12px;background:white;box-shadow:var(--shadow);padding:12px}.user-menu a{display:block;padding:10px 12px;border-radius:7px;font-size:14px}.user-menu a:hover{background:#f4f6f7}.empty{padding:70px 24px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:12px}.empty-symbol{height:64px;width:64px;border-radius:18px;background:#f1f3e1;display:grid;place-items:center;margin-bottom:5px}.empty-symbol .icon{width:28px;height:28px;color:#6e7a35}.empty p{font-size:14px;color:var(--muted);max-width:390px}.empty .button{margin-top:10px}.skeleton{background:linear-gradient(100deg,#edf0f2 25%,#f6f7f8 40%,#edf0f2 60%);background-size:300% 100%;animation:shimmer 1.8s infinite;border-radius:8px;height:18px}.skeleton-row{display:grid;grid-template-columns:1fr 2fr 1fr;gap:30px;padding:24px;border-bottom:1px solid var(--border)}@keyframes shimmer{to{background-position:-150% 0}}.loading-spinner{width:22px;height:22px;border:2px solid #dfe5c0;border-top-color:#7c8a19;border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.chart-wrap{padding:24px;overflow:hidden}.chart{width:100%;height:auto;display:block}.chart-label{fill:#7a858a;font:12px Manrope,Arial}.chart-grid{stroke:#edf0f1;stroke-width:1}.funnel-track{width:240px;height:28px;border-radius:5px;background:#f4f6ea}.funnel-bar{height:100%;border-radius:5px;background:#dce927}.funnel-bar.dark{background:#222a23}.reports-stats{grid-template-columns:repeat(4,minmax(0,1fr))}.report-note{font-size:12px;color:#7d878a;margin:15px 0 22px}.legend{display:flex;gap:20px;font-size:12px;margin-bottom:20px;color:var(--muted)}.legend span:before{content:'';display:inline-block;width:10px;height:10px;background:var(--c,var(--accent));border-radius:3px;margin-right:7px}.login-layout{min-height:100vh;display:grid;grid-template-columns:1.05fr 1fr;background:white}.login-art{background:#131715;color:white;padding:50px 64px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.login-art .brand-mark{color:#111}.login-art h1{font-size:52px;letter-spacing:-2px;line-height:1.15;max-width:520px;margin:50px 0 25px}.highlight{color:var(--accent)}.login-art p{font-size:16px;color:#a9b2ae;max-width:400px}.login-art .mini-stat{border-top:1px solid #39423d;padding:22px 0;display:flex;gap:40px;margin-top:70px}.mini-stat strong{font-size:28px;display:block;color:#e5f21a}.mini-stat span{font-size:12px;color:#a0aba5}.login-form-side{display:flex;align-items:center;justify-content:center;padding:40px}.login-form{width:100%;max-width:380px}.login-form h1{font-size:30px}.login-form>p{font-size:14px;color:var(--muted);margin:10px 0 30px}.login-form .field{margin-bottom:20px}.login-form .button{width:100%;margin-top:24px}.login-form .checkbox-label{justify-content:flex-start}.login-foot{font-size:12px;color:#939a9d;margin-top:30px;line-height:1.8}.error-page{min-height:65vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:18px}.error-number{font-size:120px;letter-spacing:-8px;line-height:1;font-weight:800;color:#d5ddaa}.error-page p{color:var(--muted);max-width:420px}.dialog{width:min(560px,calc(100% - 32px));border:1px solid var(--border);border-radius:16px;padding:0;box-shadow:0 25px 100px #0003;color:var(--ink);max-height:90vh}.dialog::backdrop{background:#18202066;backdrop-filter:blur(3px)}.dialog-head{padding:23px 25px 18px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border)}.dialog-body{padding:24px;overflow:auto}.dialog-body p{font-size:14px;color:var(--muted);margin-bottom:20px}.dialog-foot{padding:18px 24px;display:flex;justify-content:flex-end;gap:10px;background:#fbfcfc;border-top:1px solid var(--border)}.toast-host{position:fixed;right:24px;bottom:75px;z-index:100;display:flex;flex-direction:column;gap:10px;max-width:calc(100vw - 40px)}.toast{display:flex;align-items:center;gap:12px;padding:16px 20px;border:1px solid #ced8b6;border-radius:12px;background:white;box-shadow:var(--shadow);font-size:14px}.toast.error{border-color:#e4c2bc}.toast button{border:0;background:none;color:var(--muted)}.prototype-bar{position:fixed;bottom:14px;right:24px;display:flex;gap:10px;align-items:center;background:#111916;color:#fff;border:1px solid #39433c;border-radius:10px;padding:8px 11px;z-index:45;box-shadow:0 4px 15px #0002;font-size:11px}.prototype-bar select{min-height:28px;font-size:11px;width:auto;padding:3px 7px;background:#27312b;color:#e1e9e0;border-color:#3c473f}.prototype-bar a{color:#e5f21a;padding:0 6px}.prototype-label{letter-spacing:.5px;color:#bac4bd}.catalog{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.catalog-card{padding:22px}.catalog-card .actions{margin-top:15px}.ui-swatch{height:65px;border-radius:9px;border:1px solid #0001;margin-bottom:10px}.ui-colors{display:grid;grid-template-columns:repeat(5,1fr);gap:15px}.component-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.component-grid .panel+.panel{margin:0}.status-timeline{display:flex;gap:6px;margin:24px 0 2px}.status-step{height:5px;background:#e9ecef;flex:1;border-radius:3px}.status-step.reached{background:#d5e222}.status-step.current{background:#293526}.settings-mobile{display:none}.mobile-only{display:none}[hidden]{display:none!important}.role-manager [data-senior]{display:none!important}.role-senior [data-manager]{display:none!important}.role-manager [data-other]{display:none!important}.role-manager [data-client-other]{display:none!important}.row-selected{background:#f4f8db!important}.fineprint{font-size:12px;color:var(--muted);line-height:1.7}.table-checkbox{width:18px!important;min-height:18px!important;margin:0}.status-time{font-size:12px;color:#8a9497}.full-width{width:100%}.tight{margin:0!important}.mb20{margin-bottom:20px}.mt20{margin-top:20px}.mt12{margin-top:12px}.value-mono{font-family:Consolas,monospace;font-size:13px}.amount{font-weight:750;font-variant-numeric:tabular-nums}.mini-progress{height:4px;border-radius:5px;background:#e9edef;margin-top:10px;overflow:hidden}.mini-progress span{display:block;height:100%;background:var(--accent)}
@media(min-width:1600px){.wrap{padding-top:40px}.topbar{padding-inline:max(32px,calc((100vw - 1536px)/2))}.dashboard-grid{grid-template-columns:minmax(0,1fr) 370px}}
@media(max-width:1250px){.topbar{gap:22px;padding:0 24px}.topnav{gap:17px}.global-search{display:none}.wrap{padding:28px 24px 100px}.stats.five{grid-template-columns:repeat(4,1fr)}.stat-fifth{display:none}.dashboard-grid{grid-template-columns:minmax(0,1fr) 310px}.stat{padding:20px}.fields{grid-template-columns:130px 1fr}.detail-grid{gap:18px}.settings-layout{gap:20px;grid-template-columns:190px minmax(0,1fr)}}
@media(max-width:1000px){.topbar{height:70px}.topnav{gap:14px}.topnav a{font-size:12px}.brand{font-size:18px}.brand-mark{width:31px;height:33px}.top-actions{gap:8px}.wrap{padding:26px 20px 100px}.dashboard-grid{grid-template-columns:1fr}.dashboard-grid>.panel{grid-row:2}.dashboard-grid .stack{min-width:0}.stats,.stats.five{grid-template-columns:repeat(4,1fr);gap:12px}.stat-value{font-size:28px}.stat{padding:18px;min-height:130px}.profile-grid{grid-template-columns:1fr}.detail-grid{grid-template-columns:1fr}.catalog{grid-template-columns:repeat(2,1fr)}.login-art{padding:40px}.login-art h1{font-size:42px}.settings-layout{grid-template-columns:175px minmax(0,1fr)}.settings-nav a{font-size:13px;padding:10px}.page-heading{align-items:flex-start}.page-heading .actions{justify-content:flex-end}.funnel-track{width:160px}}
@media(max-width:760px){.topbar{padding:0 18px;height:64px;gap:12px}.menu-button{display:inline-flex}.topnav{display:none;position:absolute;left:0;right:0;top:64px;background:white;box-shadow:0 10px 20px #0001;padding:12px 20px;flex-direction:column;gap:0;border-bottom:1px solid var(--border)}.topnav.open{display:flex}.topnav a{font-size:14px;padding:13px;border-radius:6px;border:0}.topnav a.active{background:#f2f6d6}.top-actions{margin-left:auto}.top-actions>.icon-btn.search-toggle{display:none}.wrap{padding:24px 16px 90px}h1{font-size:27px;letter-spacing:-1px}h2{font-size:18px}.page-heading{gap:15px;flex-wrap:wrap;margin-bottom:23px}.page-heading .actions{justify-content:flex-start}.page-heading p{font-size:13px}.page-heading .button{font-size:13px}.stats,.stats.five{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.stat{padding:18px;min-height:129px}.stat-title{font-size:12px}.stat-value{font-size:29px}.stat-note{font-size:11px}.dashboard-grid{gap:16px}.panel-head{padding:18px}.panel-body{padding:20px}.pool-summary{padding:12px 18px}.panel-head .text-link{font-size:12px}.panel{border-radius:12px}th,td{padding:14px}.tabs{gap:22px;margin-bottom:18px}.filters{gap:8px}.filters .search-field{min-width:100%;max-width:none}.filters select{flex:1;min-width:120px}.table-foot{padding:14px;flex-wrap:wrap}.fields{grid-template-columns:110px 1fr;gap:15px;font-size:13px}.edit-value{font-size:13px}.detail-toolbar .button{font-size:12px;padding:9px 12px}.detail-head h1{font-size:26px}.detail-head .badge{font-size:11px}.comment-box{padding:18px}.activity{padding:19px}.board{display:block;overflow:visible}.board-column{width:100%!important;min-width:0;display:none}.board-column.mobile-active{display:block}.board-column.final .column-heading{writing-mode:horizontal-tb;height:auto}.board-column.final .board-items{display:block}.board-column .board-items{min-height:100px}.board-mobile-select{display:block;margin-bottom:16px}.board-column .column-heading{padding:6px 4px 16px}.settings-layout{display:block}.settings-nav{display:none}.settings-mobile{display:block;margin-bottom:20px}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.settings-summary{gap:13px;align-items:flex-start}.profile-grid{gap:17px}.notice-row{padding:18px;gap:12px;flex-wrap:wrap}.notice-row time{margin-left:46px}.notification-menu{width:calc(100vw - 24px);right:12px;top:58px}.catalog,.component-grid{grid-template-columns:1fr}.ui-colors{grid-template-columns:repeat(3,1fr)}.prototype-bar{right:10px;left:10px;bottom:8px;justify-content:center;gap:8px;font-size:10px;padding:7px}.prototype-bar .prototype-label{font-size:9px}.prototype-bar select{max-width:115px}.prototype-bar a{padding:0}.login-layout{display:block}.login-art{display:none}.login-form-side{min-height:100vh;padding:30px 24px 90px}.login-form-side .mobile-only{display:flex;margin-bottom:60px}.error-number{font-size:100px}.banner{align-items:flex-start;font-size:13px}.banner .button{font-size:12px}.toast-host{right:16px;bottom:65px}.task-row{padding:17px}.desktop-only{display:none}.mobile-only{display:block}.dialog-body{padding:20px}.dialog-head{padding:18px 20px}.dialog-foot{padding:16px 20px}.chart-wrap{padding:15px}.checkbox-label{font-size:12px}.bulk-toolbar{flex-wrap:wrap}.funnel-track{width:130px}.login-form h1{font-size:30px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;scroll-behavior:auto!important;transition:none!important}}

/* Tablet header collapses before navigation starts to crowd. */
@media(min-width:761px) and (max-width:1000px){.menu-button{display:inline-flex}.topnav{display:none;position:absolute;left:0;right:0;top:70px;background:white;padding:12px 20px;flex-direction:column;box-shadow:0 10px 20px #0001;gap:0}.topnav.open{display:flex}.topnav a{font-size:14px;padding:13px;border:0}.topnav a.active{background:#f2f6d6}.top-actions{margin-left:auto}}
.board-drop-target{border:2px dashed #899b25;border-radius:10px;background:#f2f6d6;min-height:150px;padding:20px;display:grid;place-items:center;font-size:13px;color:#526013}.kanban-card{border-top:3px solid var(--status,#e3e7e9)}
.dialog-body>.field+.field{margin-top:18px}.dialog-body form{margin:0}

.legend{flex-wrap:wrap;row-gap:10px}.stat-fifth{display:block}@media(max-width:1250px){.stats.five{grid-template-columns:repeat(3,minmax(0,1fr))}.stats.five .stat-fifth{grid-column:span 2}}@media(max-width:760px){.stats.five{grid-template-columns:repeat(2,minmax(0,1fr))}.reports-stats .stat-value{font-size:22px;white-space:nowrap}.legend{gap:10px}}


/* ---- review revision merged ---- */
/* Review revision: readable state colors, accessible focus and dense controls. */
.badge,.badge.neutral{color:#111313;background:color-mix(in srgb,var(--status,#6e7579) 10%,white)}
.badge::before{background:var(--status,#6e7579);width:7px;height:7px;flex:none;box-shadow:0 0 0 1px #11131333}
input:focus,select:focus,textarea:focus{outline:2px solid #899500;outline-offset:2px}
.dialog::backdrop{background:#18202099;backdrop-filter:none}
.dialog-body>.field+.field,.dialog-body>[data-status-fields],.dialog-body>[data-task-lead]+.field{margin-top:18px}
.dialog-body>.field select,.dialog-body>.field input{width:100%}
.dialog-body [data-status-fields]>.field+.field{margin-top:18px}
.dialog-foot{flex-wrap:wrap}.dialog-foot .button{white-space:normal;text-align:center}
.client-results{display:grid;gap:8px;max-height:240px;overflow:auto;margin-top:14px}
.client-choice{display:flex;gap:10px;padding:12px;border:1px solid var(--border);border-radius:8px;font-size:13px;align-items:flex-start}
.client-choice input{flex:none;margin-top:3px}.client-history{font-size:12px;margin-top:12px}.client-history li{margin-block:8px}
.truncate{display:block;max-width:240px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pool-overdue{background:#fff9e7}.pool-overdue .waiting{color:#79531e;font-weight:800}
.contact-row{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px}
.radio-group,.status-filter,.contact-group{border:1px solid var(--border);border-radius:10px;padding:16px;margin:0;min-width:0}
.radio-group,.status-filter{display:flex;gap:16px;flex-wrap:wrap}.radio-group legend,.status-filter legend,.contact-group legend{font-size:13px;font-weight:700;padding-inline:6px}
.contact-group.invalid{border-color:#b64445}.contact-group.invalid>.field-error{display:block}
.filter-panel .field-error{font-size:11px}.mobile-filter-toggle{display:none}
.notification-count{position:absolute;top:0;right:0;background:#e5f21a;color:#111313;min-width:17px;height:17px;display:grid;place-items:center;border-radius:8px;font-size:10px;font-weight:800}
.top-actions>[data-action="notifications"]{position:relative}.global-search{width:260px;font-size:12px}
.column-heading .column-amount{font-size:11px;color:#526055}.board-column.final:not(.expanded) .column-amount{display:none}
.sort-header{border:0;background:none;color:inherit;font:inherit;padding:0;display:inline-flex;align-items:center;gap:5px;text-align:left;cursor:pointer}
th[aria-sort=ascending] .sort-header span,th[aria-sort=descending] .sort-header span{font-size:0}
th[aria-sort=ascending] .sort-header span:after{content:'↑';font-size:12px}th[aria-sort=descending] .sort-header span:after{content:'↓';font-size:12px}
.toast{max-width:480px}.toast button{border:0;background:none;font-size:22px;cursor:pointer;margin-left:12px}.toast.error{border-color:#b64445}
.board-items.board-drop-target{outline:2px dashed #899500;outline-offset:3px;background:#f3f6df;border:0;min-height:200px;padding:0}
.dialog-body output{display:block;user-select:all;overflow-wrap:anywhere}
.role-manager .stats.five{grid-template-columns:repeat(4,minmax(0,1fr))}
.role-manager .comment-box [data-senior],.role-manager dialog [data-senior]{display:none}
@media(max-width:1250px){.global-search{width:180px}}
@media(max-width:760px){
 .mobile-filter-toggle{display:flex;margin-bottom:14px}.filter-panel{display:none}.filter-panel.mobile-open{display:block}
 .role-manager .stats.five{grid-template-columns:repeat(2,minmax(0,1fr))}
 .detail-toolbar{display:flex;flex-wrap:wrap}.detail-toolbar .button,.page-heading .button{white-space:normal;text-align:center;max-width:100%}
 .page-heading .actions{max-width:100%;flex-wrap:wrap}.panel-head{gap:12px;flex-wrap:wrap}.panel-head>.button{max-width:100%;white-space:normal}
 .radio-group{gap:14px}.contact-row{flex-wrap:wrap}.client-choice{font-size:12px}.dialog-head h2{font-size:19px}
 .stat-value{overflow-wrap:anywhere}.table-foot .pagination{flex-wrap:wrap}.truncate{max-width:180px}
}

/* ---- project additions ---- */
.table-scroll td:last-child .button{white-space:nowrap}
.login-wrap{max-width:440px;margin:40px auto}
.notice-row.unread{background:#fbfce9}
