:root{--navy:#142b4a;--blue:#2369d8;--blue-hover:#1c5ebf;--blue-soft:#edf4ff;--blue-focus:#2369d840;--blue-focus-soft:#2369d814;--orange:#f2682a;--green:#198754;--purple:#7c5bd6;--ink:#172033;--muted:#6c778c;--label:#4d586b;--placeholder:#8791a3;--line:#e5e9f0;--surface:#fff;--canvas:#f5f7fb;--hover:#f3f6fa;--field-bg:#fbfcfe;--field-border:#dce2eb;--red:#a23b3b;--red-soft:#fff0f0;--red-border:#f0c7c7;--yellow:#a95c0a;--yellow-soft:#fff3df;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-7:32px;--radius-sm:7px;--radius-md:9px;--radius-lg:14px;--radius-xl:18px;--radius-pill:999px;--shadow-sm:0 1px 3px #00000014;--shadow-md:0 3px 14px #142b4a09;--shadow-lg:0 8px 24px #111f341f;--shadow-xl:0 22px 70px #142b4a1a;--shadow-button:0 8px 20px #2369d82e;--shadow-drawer:-18px 0 50px #111f3426;--shadow-modal:0 30px 90px #111f3438;--font-xs:10px;--font-sm:12px;--font-base:13px;--font-md:16px;--font-lg:20px;--font-xl:31px;--btn-height:40px;--btn-icon-size:36px;--input-height:44px;--sidebar-width:248px;--topbar-height:68px;--transition:.2s ease;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body{min-height:100dvh}body{color:var(--ink);background:var(--canvas);padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}@media (display-mode:standalone){body{-webkit-user-select:none;-webkit-user-select:text;user-select:text}}button,input{font:inherit}button{color:inherit}button:focus-visible,input:focus-visible{outline:3px solid var(--blue-focus);outline-offset:2px}.tenant-login-page{background:#fff;grid-template-columns:minmax(360px,.9fr) 1.1fr;min-height:100vh;display:grid}.tenant-login-copy{color:#fff;background:radial-gradient(circle at 80% 20%,#4b89e673,#0000 32%),linear-gradient(145deg,#102846,#1f5dae);flex-direction:column;justify-content:space-between;min-height:100vh;padding:clamp(34px,5vw,76px);display:flex}.tenant-login-copy>div{max-width:540px}.tenant-login-copy h1{font-size:clamp(38px,5vw,68px);line-height:1.02}.tenant-login-copy p:not(.eyebrow){color:#d8e5f8;font-size:18px;line-height:1.6}.tenant-login-copy small{color:#b9cceb}.tenant-login-logo{border-radius:var(--radius-lg) var(--radius-lg) var(--radius-lg) var(--sp-1);background:var(--orange);place-items:center;width:48px;height:48px;font-size:24px;font-weight:800;display:grid}.tenant-login-form-wrap{padding:var(--sp-7);background:#f7f9fc;place-items:center;display:grid}.tenant-login-card{border:1px solid var(--line);border-radius:var(--radius-xl);width:min(440px,100%);box-shadow:var(--shadow-xl);background:#fff;padding:42px}.tenant-login-card h2{margin:0 0 var(--sp-2);font-size:30px}.tenant-login-card>p:not(.eyebrow){color:var(--muted)}.tenant-login-card form{margin:28px 0 var(--sp-5);gap:var(--sp-4);display:grid}.tenant-login-card label{gap:var(--sp-2);color:var(--label);font-size:var(--font-sm);font-weight:700;display:grid}.tenant-login-card input{height:48px;padding:0 var(--sp-4);border:1px solid var(--field-border);border-radius:var(--radius-md);background:var(--field-bg)}.tenant-login-card form>button{height:50px;margin-top:var(--sp-1);border-radius:var(--radius-md);color:#fff;background:var(--blue);cursor:pointer;transition:background var(--transition);border:0;font-weight:800}.tenant-login-card form>button:hover{background:var(--blue-hover)}.tenant-login-card>small{color:#939dac}.login-error{padding:11px var(--sp-3);border-radius:var(--radius-md);color:#9f2f2f;background:var(--red-soft);font-size:var(--font-base)}.tenant-selector{gap:var(--sp-2);border:0;margin:0;padding:0;display:grid}.tenant-selector legend{font-size:var(--font-base);color:var(--label);margin-bottom:var(--sp-1);font-weight:700}.tenant-option{align-items:center;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);border:1px solid var(--field-border);border-radius:var(--radius-md);background:var(--field-bg);cursor:pointer;color:var(--ink);transition:border-color var(--transition), background var(--transition);font-size:14px;font-weight:600;display:flex}.tenant-option:hover,.tenant-option.selected{border-color:var(--blue);background:var(--blue-soft)}.tenant-option input[type=radio]{accent-color:var(--blue)}.tenant-login-card form>button:disabled{opacity:.5;cursor:not-allowed}.profile-content form{padding:var(--sp-4) var(--sp-3)}.profile-content .logout-button{width:100%;height:var(--btn-height);border:1px solid var(--red-border);border-radius:var(--radius-md);color:var(--red);cursor:pointer;transition:background var(--transition);background:#fff7f7;font-weight:700}.app-shell{min-height:100vh;padding-left:var(--sidebar-width);transition:padding-left var(--transition)}.app-shell.is-collapsed{--sidebar-width:80px}.sidebar{width:var(--sidebar-width);z-index:40;background:var(--surface);border-right:1px solid var(--line);transition:width var(--transition);flex-direction:column;display:flex;position:fixed;inset:0 auto 0 0}.brand-row{min-height:var(--topbar-height);padding:0 var(--sp-4) 0 var(--sp-4);border-bottom:1px solid var(--line);align-items:center;gap:11px;display:flex}.brand-mark{color:#fff;background:linear-gradient(145deg, var(--orange), #e64b1c);border-radius:11px 11px 11px 3px;flex:none;place-items:center;width:35px;height:35px;font-weight:800;display:grid}.brand-row>div:nth-child(2){min-width:0;display:grid}.brand-row strong{font-size:var(--font-md);letter-spacing:-.02em}.brand-row span{color:var(--muted);white-space:nowrap;font-size:11px}.collapse-button{margin-left:auto}.icon-button{width:var(--btn-icon-size);height:var(--btn-icon-size);border-radius:var(--radius-md);cursor:pointer;transition:background var(--transition);background:0 0;border:0;place-items:center;display:inline-grid}.icon-button:hover{background:var(--hover)}.nav-list{padding:var(--sp-4) var(--sp-3);overflow-y:auto}.nav-section{height:18px;margin:var(--sp-2) var(--sp-3) var(--sp-2);color:#9aa3b3;font-size:var(--font-xs);letter-spacing:.1em;text-transform:uppercase;font-weight:800}.nav-item{width:100%;height:43px;padding:0 var(--sp-3);border-radius:var(--radius-md);align-items:center;gap:var(--sp-3);color:var(--label);cursor:pointer;text-align:left;white-space:nowrap;transition:background var(--transition), color var(--transition);font-size:var(--font-base);background:0 0;border:0;text-decoration:none;display:flex;position:relative}.nav-item:hover{background:var(--hover);color:var(--navy)}.nav-item.active{background:var(--blue-soft);color:var(--blue);font-weight:700}.nav-item.active:before{content:"";left:calc(var(--sp-3) * -1);border-radius:0 var(--sp-1) var(--sp-1) 0;background:var(--blue);width:3px;height:22px;position:absolute}.nav-item small{min-width:22px;height:var(--sp-5);border-radius:var(--sp-2);color:var(--blue);background:#fff;place-items:center;margin-left:auto;font-weight:800;display:grid}.sidebar-footer{padding:var(--sp-3) var(--sp-3) var(--sp-5);border-top:1px solid var(--line);margin-top:auto}.version{padding:var(--sp-2) var(--sp-3) 0;color:#a0a9b8;font-size:var(--font-xs);display:block}.nav-sub-item{height:38px;font-size:var(--font-sm);padding-left:var(--sp-7)!important}.nav-sub-dot{background:var(--muted);border-radius:50%;flex-shrink:0;width:6px;height:6px}.nav-chevron{transition:transform var(--transition);color:var(--muted);margin-left:auto}.nav-chevron.open{transform:rotate(180deg)}.is-collapsed .nav-item{justify-content:center;padding:0}.is-collapsed .collapse-button{margin-left:0}.top-float{top:0;left:var(--sidebar-width);z-index:30;pointer-events:none;height:0;transition:left var(--transition);position:fixed;right:0}.top-float-actions{top:var(--sp-5);right:var(--sp-7);align-items:center;gap:var(--sp-2);pointer-events:auto;display:flex;position:absolute}.mobile-menu-btn{pointer-events:auto;display:none}.notification-button{position:relative}.avatar-button{color:#33506f;cursor:pointer;width:38px;height:38px;transition:opacity var(--transition);background:#dbe6ef;border:0;border-radius:50%;font-weight:800}.table-search{align-items:center;gap:var(--sp-2);height:34px;padding:0 var(--sp-3);border:1px solid var(--line);border-radius:var(--radius-md);color:var(--placeholder);background:var(--field-bg);transition:border-color var(--transition);display:flex}.table-search:focus-within{border-color:#97b9ee}.table-search input{width:160px;color:var(--ink);font-size:var(--font-sm);background:0 0;border:0;outline:none}.main-content{max-width:1600px;padding:var(--sp-7);margin:0 auto}.page-heading{justify-content:space-between;align-items:flex-end;gap:var(--sp-6);margin-bottom:var(--sp-6);display:flex}.eyebrow{color:var(--blue);font-size:var(--font-sm);letter-spacing:.08em;text-transform:uppercase;margin-bottom:6px;font-weight:800}h1,h2,p{margin-top:0}h1{letter-spacing:-.035em;margin-bottom:6px;font-size:clamp(26px,2.2vw,36px)}.page-heading p,.panel-heading p{color:var(--muted);margin-bottom:0}.primary-button,.secondary-button{height:var(--btn-height);border-radius:var(--radius-md);justify-content:center;align-items:center;gap:var(--sp-2);cursor:pointer;transition:background var(--transition);border:0;font-weight:700;text-decoration:none;display:inline-flex}.primary-button{padding:0 var(--sp-5);color:#fff;background:var(--blue);box-shadow:var(--shadow-button)}.primary-button:hover{background:var(--blue-hover)}.secondary-button{padding:0 var(--sp-3);color:var(--blue);background:var(--blue-soft)}.metrics-grid{gap:var(--sp-4);margin-bottom:var(--sp-5);grid-template-columns:repeat(4,1fr);display:grid}.metric-card{min-height:148px;padding:var(--sp-5);border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-md);position:relative;overflow:hidden}.metric-card:before{content:"";background:var(--accent);width:4px;position:absolute;inset:0 auto 0 0}.metric-card>span{margin-bottom:var(--sp-3);color:var(--muted);font-size:var(--font-base);font-weight:600;display:block}.metric-card strong{margin-bottom:var(--sp-2);font-size:var(--font-xl);letter-spacing:-.04em;display:block}.metric-card small{color:var(--muted)}.metric-card>svg{top:var(--sp-5);right:var(--sp-5);width:35px;height:35px;padding:var(--sp-2);border-radius:var(--radius-md);color:var(--accent);background:color-mix(in srgb, var(--accent) 10%, white);position:absolute}.accent-blue{--accent:var(--blue)}.accent-orange{--accent:var(--orange)}.accent-green{--accent:var(--green)}.accent-purple{--accent:var(--purple)}.content-grid{gap:var(--sp-5);grid-template-columns:minmax(0,1fr) 340px;display:grid}.panel{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-md)}.panel-heading{min-height:76px;padding:var(--sp-5);justify-content:space-between;align-items:center;gap:var(--sp-4);display:flex}.panel-heading h2{margin-bottom:var(--sp-1);font-size:var(--font-md);letter-spacing:-.015em}.panel-heading p{font-size:var(--font-sm)}.table-tools{min-height:49px;padding:var(--sp-2) var(--sp-3) var(--sp-2) var(--sp-5);border-block:1px solid var(--line);justify-content:space-between;align-items:center;display:flex}.segmented{gap:var(--sp-1);border-radius:var(--radius-md);background:#f2f4f8;padding:3px;display:flex}.segmented button{height:29px;padding:0 var(--sp-3);border-radius:var(--radius-sm);color:var(--muted);cursor:pointer;font-size:var(--font-sm);transition:background var(--transition), color var(--transition);background:0 0;border:0}.segmented button.selected{color:var(--ink);box-shadow:var(--shadow-sm);background:#fff;font-weight:700}.table-scroll{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:var(--font-sm);white-space:nowrap}th{padding:var(--sp-3) var(--sp-4);color:#7c8698;font-size:var(--font-xs);letter-spacing:.045em;text-align:left;text-transform:uppercase;background:#fafbfd}td{height:64px;padding:11px var(--sp-4);border-top:1px solid #edf0f4}tbody tr{cursor:pointer;transition:background var(--transition)}tbody tr:hover{background:#f9fbff}td strong{font-weight:600}.protocol{color:var(--blue);font-weight:700}.muted{color:var(--muted)}.status{padding:5px var(--sp-2);border-radius:var(--radius-pill);font-size:var(--font-xs);align-items:center;gap:6px;font-weight:700;display:inline-flex}.status:before{content:"";background:currentColor;border-radius:50%;width:6px;height:6px}.status-progress{color:var(--blue);background:#eaf3ff}.status-waiting{color:var(--yellow);background:var(--yellow-soft)}.status-done{color:#17774b;background:#e7f6ef}.module-badge{border-radius:var(--radius-pill);font-size:var(--font-xs);color:var(--label);white-space:nowrap;background:#f0f3f8;padding:3px 8px;font-weight:600;display:inline-block}.empty-search{place-content:center;justify-items:center;gap:var(--sp-2);min-height:240px;color:var(--muted);display:grid}.right-column{align-content:start;gap:var(--sp-5);display:grid}.progress-panel{padding-bottom:var(--sp-5)}.progress-panel .panel-heading strong{color:var(--green);font-size:var(--font-lg)}.summary-stats{padding:0 var(--sp-5) var(--sp-3);gap:0;display:grid}.summary-stats>div{padding:var(--sp-3) 0;border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;display:flex}.summary-stats>div:last-child{border-bottom:0}.summary-stats span{color:var(--muted);font-size:var(--font-sm)}.summary-stats strong{font-size:var(--font-md)}.progress-track{height:7px;margin:0 var(--sp-5);border-radius:var(--radius-pill);background:#e9edf3;overflow:hidden}.progress-track span{border-radius:inherit;background:linear-gradient(90deg, var(--blue), #4f8eeb);width:77%;height:100%;display:block}.progress-labels,.progress-bars{margin:var(--sp-4) var(--sp-5) 0;grid-template-columns:repeat(5,1fr);gap:11px;display:grid}.progress-labels{color:#99a2b0;font-size:var(--font-xs);text-align:center}.progress-bars{align-items:end;height:86px}.progress-bars i{background:#dce6f3;border-radius:5px 5px 2px 2px;width:100%}.progress-bars i.today{background:var(--blue)}.notices-panel{padding-bottom:var(--sp-3)}.notices-panel article{margin:0 var(--sp-5);padding:var(--sp-4) 3px;border-top:1px solid var(--line)}.notices-panel article>span{color:var(--blue);font-size:var(--font-xs);text-transform:uppercase;margin-bottom:6px;font-weight:800;display:block}.notices-panel article strong{font-size:var(--font-base);margin-bottom:5px;display:block}.notices-panel article p{color:var(--muted);margin-bottom:0;font-size:11px;line-height:1.5}.text-button{margin:var(--sp-1) var(--sp-5);padding:var(--sp-2) 3px;align-items:center;gap:var(--sp-1);color:var(--blue);cursor:pointer;font-size:var(--font-sm);background:0 0;border:0;font-weight:700;text-decoration:none;display:flex}.panel-backdrop,.backdrop{z-index:48;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);background:#111f342e;border:0;position:fixed;inset:0}.context-drawer{z-index:50;width:min(420px,92vw);padding:0 var(--sp-5);box-shadow:var(--shadow-drawer);background:#fff;animation:.2s ease-out slide-in;position:fixed;inset:0 0 0 auto}@keyframes slide-in{0%{transform:translate(100%)}}.drawer-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;height:88px;display:flex}.drawer-heading span{color:var(--blue);font-size:var(--font-xs);letter-spacing:.1em;text-transform:uppercase;font-weight:800}.drawer-heading h2{font-size:var(--font-lg);margin:3px 0 0}.notification-list{padding:0 var(--sp-5)}.notification-actions{padding:var(--sp-3) 0;border-bottom:1px solid var(--line);font-size:var(--font-sm);color:var(--muted);justify-content:space-between;align-items:center;display:flex}.notification-actions button{color:var(--blue);font-size:var(--font-xs);cursor:pointer;background:0 0;border:0;align-items:center;gap:4px;font-weight:600;display:flex}.notification-item{padding:var(--sp-4) 0;border-bottom:1px solid var(--line);gap:var(--sp-3);cursor:pointer;align-items:flex-start;display:flex;position:relative}.notification-item.read{opacity:.6;cursor:default}.notification-body{flex:1;min-width:0}.notification-body strong{font-size:var(--font-sm);margin-bottom:3px;line-height:1.35;display:block}.notification-body p{color:var(--muted);font-size:var(--font-xs);white-space:nowrap;text-overflow:ellipsis;margin:0 0 4px;line-height:1.4;overflow:hidden}.notification-body time{color:#9aa3b1;font-size:11px}.notification-read-btn{color:var(--muted);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:0;flex:none;padding:4px}.notification-read-btn:hover{color:var(--blue);background:var(--blue-soft)}.notification-empty{padding:var(--sp-7) 0;text-align:center;color:var(--muted);font-size:var(--font-sm)}.notification-badge{color:#fff;background:var(--orange);border:2px solid #fff;border-radius:50%;place-items:center;min-width:17px;height:17px;font-size:9px;font-weight:800;line-height:1;display:grid;position:absolute;top:2px;right:0}.notification-icon{border-radius:var(--radius-md);flex:none;place-items:center;width:38px;height:38px;display:grid}.notification-icon svg{width:18px}.notification-icon.orange{color:var(--orange);background:#fff0e9}.notification-icon.blue{color:var(--blue);background:var(--blue-soft)}.notification-icon.green{color:var(--green);background:#e8f6ef}.profile-card{border-bottom:1px solid var(--line);justify-items:center;gap:6px;padding:35px 0;display:grid}.profile-avatar{width:72px;height:72px;margin-bottom:var(--sp-2);color:#fff;background:var(--navy);border-radius:22px;place-items:center;font-size:22px;font-weight:800;display:grid}.profile-card span{color:var(--muted);font-size:var(--font-sm)}.profile-content>button,.profile-content>a{width:100%;height:52px;padding:0 var(--sp-3);border:0;border-bottom:1px solid var(--line);align-items:center;gap:var(--sp-3);color:inherit;cursor:pointer;text-align:left;transition:color var(--transition);background:0 0;text-decoration:none;display:flex}.profile-content>button:hover,.profile-content>a:hover{color:var(--blue)}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}@media (max-width:1180px){.metrics-grid{grid-template-columns:repeat(2,1fr)}.content-grid{grid-template-columns:1fr}.right-column{grid-template-columns:repeat(2,1fr)}}@media (max-width:860px){.tenant-login-page{grid-template-columns:1fr}.tenant-login-copy{min-height:270px;padding:30px}.tenant-login-copy>div{margin:50px 0}.tenant-login-copy h1{font-size:38px}.tenant-login-form-wrap{padding:var(--sp-6)}.app-shell,.app-shell.is-collapsed{padding-left:0}.sidebar,.is-collapsed .sidebar{width:var(--sidebar-width);transform:translate(-105%);box-shadow:12px 0 32px #111f3421}.sidebar.is-open{transform:translate(0)}.sidebar.is-open .brand-row>div:nth-child(2),.sidebar.is-open .nav-item span,.sidebar.is-open .nav-item small,.sidebar.is-open .version{display:initial}.sidebar.is-open .nav-item{padding:0 var(--sp-3);justify-content:flex-start}.collapse-button{display:none}.top-float{left:0}.mobile-menu-btn{top:var(--sp-5);left:var(--sp-5);display:inline-grid;position:absolute}.top-float-actions{right:var(--sp-5)}.main-content{padding:var(--sp-6) var(--sp-5)}}@media (max-width:620px){.page-heading{flex-direction:column;align-items:stretch}.primary-button{align-self:flex-start}.metrics-grid,.right-column{grid-template-columns:1fr}.metric-card{min-height:132px}.panel-heading{align-items:flex-start}.secondary-button{width:38px;padding:0;font-size:0}.secondary-button svg{width:18px}}.module-heading{margin-bottom:var(--sp-6);justify-content:space-between;align-items:flex-end;gap:var(--sp-6);display:flex}.module-heading h1{margin-bottom:6px}.module-heading h1+p{color:var(--muted);margin-bottom:0}.api-readonly-notice{margin-top:var(--sp-3);color:#8a5a00;font-weight:700;display:block}.module-panel{border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);background:#fff;overflow:hidden}.module-toolbar{min-height:66px;padding:var(--sp-3) var(--sp-4);align-items:center;gap:var(--sp-3);border-bottom:1px solid var(--line);display:flex}.module-toolbar label{max-width:520px;height:42px;padding:0 var(--sp-3);align-items:center;gap:var(--sp-2);border:1px solid var(--line);border-radius:var(--radius-md);background:#fafbfd;flex:1;display:flex}.module-toolbar input{background:0 0;border:0;outline:0;width:100%}.module-toolbar select,.module-toolbar button{height:42px;padding:0 var(--sp-3);border:1px solid var(--line);border-radius:var(--radius-md);transition:color var(--transition), border-color var(--transition);background:#fff}.module-toolbar button{align-items:center;gap:var(--sp-2);cursor:pointer;display:flex}.module-toolbar button:hover{color:var(--blue);border-color:#a9c4ed}.module-table-wrap{min-height:320px;overflow-x:auto}.module-table-wrap td:last-child{width:92px}.row-actions{gap:var(--sp-1);display:flex}.row-actions button{border-radius:var(--radius-sm);width:32px;height:32px;color:var(--muted);cursor:pointer;transition:color var(--transition), background var(--transition);background:0 0;border:0;place-items:center;display:grid}.row-actions button:hover{color:var(--blue);background:var(--blue-soft)}.row-actions button:last-child:hover{color:var(--red);background:var(--red-soft)}.module-state{place-content:center;justify-items:center;gap:var(--sp-2);min-height:340px;color:var(--muted);display:grid}.module-pagination{min-height:58px;padding:0 var(--sp-5);border-top:1px solid var(--line);color:var(--muted);font-size:var(--font-sm);justify-content:space-between;align-items:center;display:flex}.module-pagination>div{align-items:center;gap:var(--sp-3);display:flex}.module-pagination button{border:1px solid var(--line);border-radius:var(--sp-2);cursor:pointer;width:34px;height:34px;transition:border-color var(--transition);background:#fff;place-items:center;display:grid}.module-pagination button:disabled{cursor:not-allowed;opacity:.4}.module-pagination svg{width:var(--sp-4)}.notice-grid{min-height:350px;padding:var(--sp-5);gap:var(--sp-4);grid-template-columns:repeat(3,1fr);display:grid}.notice-grid article{min-height:210px;padding:var(--sp-5);border:1px solid var(--line);border-radius:var(--radius-lg);cursor:pointer;transition:border-color var(--transition), box-shadow var(--transition);background:#fcfdff}.notice-grid article:hover{border-color:#b5cae8;box-shadow:0 8px 25px #142b4a12}.notice-grid article>span{color:var(--blue);font-size:var(--font-xs);letter-spacing:.08em;text-transform:uppercase;font-weight:800}.notice-grid h2{margin:var(--sp-3) 0 var(--sp-2);font-size:18px}.notice-grid p{min-height:52px;color:var(--muted);font-size:var(--font-base);line-height:1.5}.notice-grid footer{justify-content:space-between;align-items:center;gap:var(--sp-3);display:flex}.notice-grid footer small{color:#929baa}.notice-grid i{font-style:normal}.modal-layer{z-index:80;padding:var(--sp-5);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#111f3461;place-items:center;display:grid;position:fixed;inset:0}.record-modal{border-radius:var(--radius-xl);width:min(620px,100%);max-height:calc(100vh - 40px);box-shadow:var(--shadow-modal);background:#fff;overflow-y:auto}.record-modal>header{min-height:82px;padding:var(--sp-5);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;display:flex}.record-modal header span{color:var(--blue);font-size:var(--font-xs);text-transform:uppercase;font-weight:800}.record-modal h2{font-size:var(--font-lg);margin:3px 0 0}.record-modal form{padding:var(--sp-5);gap:var(--sp-4);display:grid}.record-modal label,.settings-form label{gap:var(--sp-2);color:var(--label);font-size:var(--font-sm);font-weight:700;display:grid}.record-modal input,.record-modal select,.record-modal textarea,.settings-form input,.settings-form select{width:100%;min-height:var(--input-height);padding:var(--sp-3);border:1px solid var(--field-border);border-radius:var(--radius-md);background:var(--field-bg)}.record-modal textarea{resize:vertical}.form-grid{gap:var(--sp-4);grid-template-columns:1fr 1fr;display:grid}.record-modal form>footer{padding-top:var(--sp-1);justify-content:flex-end;gap:var(--sp-2);display:flex}.record-modal form>footer button{height:var(--btn-height);padding:0 var(--sp-5);border:1px solid var(--line);border-radius:var(--radius-md);cursor:pointer;transition:background var(--transition);background:#fff}.record-modal form>footer button[type=submit]{color:#fff;border-color:var(--blue);background:var(--blue);font-weight:700}.form-section{border:1px solid var(--line);border-radius:var(--radius-md);padding:var(--sp-4);gap:var(--sp-4);display:grid}.form-section legend{font-size:var(--font-sm);color:var(--blue);text-transform:uppercase;padding:0 var(--sp-2);font-weight:800}.record-modal.has-timeline{width:min(720px,100%)}.modal-timeline{padding:0 var(--sp-5) var(--sp-5);border-top:1px solid var(--line);margin-top:-4px}.modal-timeline h3{margin:var(--sp-4) 0 var(--sp-3);align-items:center;gap:var(--sp-2);color:var(--muted);text-transform:uppercase;letter-spacing:.4px;font-size:11px;font-weight:800;display:flex}.modal-timeline .timeline-thread{max-height:260px;padding-right:var(--sp-1);overflow-y:auto}.record-drawer{z-index:60;width:min(520px,94vw);padding:0 var(--sp-6);box-shadow:var(--shadow-drawer);background:#fff;flex-direction:column;animation:.2s ease-out slide-in;display:flex;position:fixed;inset:0 0 0 auto;overflow-y:auto}.record-drawer>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:100px;display:flex}.record-drawer header span{color:var(--blue);font-size:var(--font-xs);text-transform:uppercase;font-weight:800}.record-drawer h2{max-width:350px;margin:var(--sp-1) 0 0;font-size:var(--font-lg)}.record-drawer dl{margin:0}.record-drawer dl>div{padding:var(--sp-5) 0;gap:var(--sp-2);border-bottom:1px solid var(--line);display:grid}.record-drawer dt{color:var(--muted);font-size:var(--font-xs);text-transform:uppercase;font-weight:800}.record-drawer dd{margin:0}.record-drawer>footer{padding-top:var(--sp-5);gap:var(--sp-2);display:flex}.record-drawer>footer button{height:var(--btn-height);padding:0 var(--sp-4);border:1px solid var(--line);border-radius:var(--radius-md);align-items:center;gap:var(--sp-2);cursor:pointer;transition:color var(--transition), border-color var(--transition);background:#fff;display:flex}.record-drawer>footer button:last-child{color:var(--red);border-color:var(--red-border)}.record-timeline{padding:var(--sp-4) 0 0;border-top:1px solid var(--line);flex:1;overflow-y:auto}.record-timeline h3{margin:0 0 var(--sp-4);align-items:center;gap:var(--sp-2);color:var(--muted);text-transform:uppercase;letter-spacing:.4px;font-size:11px;font-weight:800;display:flex}.timeline-thread{flex-direction:column;gap:0;display:flex}.thread-entry{gap:var(--sp-3);padding:var(--sp-4) 0;border-bottom:1px solid #f0f2f5;display:flex}.thread-entry:last-child{border-bottom:none}.thread-avatar{width:var(--btn-icon-size);height:var(--btn-icon-size);background:var(--blue);color:#fff;border-radius:50%;flex-shrink:0;place-items:center;font-size:11px;font-weight:800;display:grid}.thread-change .thread-avatar{background:var(--purple)}.thread-create .thread-avatar{background:var(--green)}.thread-body{flex:1;min-width:0}.thread-header{align-items:baseline;gap:var(--sp-2);flex-wrap:wrap;display:flex}.thread-header strong{font-size:var(--font-base);color:var(--ink);font-weight:700}.thread-header time{color:var(--muted);font-size:11px}.thread-message{padding:var(--sp-3);border-radius:0 var(--radius-md) var(--radius-md) var(--radius-md);font-size:var(--font-base);color:var(--ink);background:#f0f4fa;margin:5px 0 0;line-height:1.55}.thread-system{margin:var(--sp-1) 0 0;font-size:var(--font-sm);color:var(--muted);font-style:italic}.thread-changes{flex-direction:column;gap:3px;margin:5px 0 0;display:flex}.thread-changes span{padding:var(--sp-1) var(--sp-2);font-size:var(--font-sm);color:#5b45a0;background:#f5f0ff;border-radius:5px;line-height:1.4}.thread-empty{color:var(--muted);font-size:var(--font-base);padding:var(--sp-3) 0;font-style:italic}.comment-form{gap:var(--sp-2);padding:var(--sp-3) 0 var(--sp-1);border-top:1px solid var(--line);display:flex}.comment-form input{height:var(--btn-height);padding:0 var(--sp-3);border:1px solid var(--field-border);border-radius:var(--radius-pill);background:var(--field-bg);font-size:var(--font-base);flex:1}.comment-form button{width:var(--btn-height);height:var(--btn-height);background:var(--blue);color:#fff;cursor:pointer;transition:opacity var(--transition);border:0;border-radius:50%;flex-shrink:0;place-items:center;display:grid}.comment-form button:disabled{opacity:.4;cursor:not-allowed}.module-toast{z-index:100;right:var(--sp-6);bottom:var(--sp-6);max-width:380px;padding:var(--sp-4) var(--sp-5);border-radius:var(--radius-md);color:#fff;font-size:var(--font-base);background:#17774b;font-weight:700;position:fixed;box-shadow:0 12px 35px #142b4a33}.settings-form{gap:var(--sp-5);max-width:820px;display:grid}.settings-form section{padding:var(--sp-6);gap:var(--sp-5);border:1px solid var(--line);border-radius:var(--radius-lg);background:#fff;display:grid}.settings-form section>h2{margin:0}.settings-form section>p{margin:calc(var(--sp-3) * -1) 0 2px;color:var(--muted)}.switch-row{justify-content:space-between;align-items:center;min-height:58px;display:flex!important}.switch-row span{gap:var(--sp-1);display:grid}.switch-row small{color:var(--muted);font-weight:400}.switch-row input{width:22px;min-height:22px}.settings-form>button,.settings-form form>button{justify-self:start}.profile-form .secondary-button{margin-top:-58px;margin-left:160px}.settings-form form,.settings-evolution{gap:var(--sp-5);display:grid}.settings-evolution section{padding:var(--sp-6);gap:var(--sp-5);border:1px solid var(--line);border-radius:var(--radius-lg);background:#fff;display:grid}.settings-evolution section>h2{margin:0}.settings-evolution section>p{margin:calc(var(--sp-3) * -1) 0 2px;color:var(--muted)}.settings-evolution label{gap:var(--sp-2);color:var(--label);font-size:var(--font-sm);font-weight:700;display:grid}.settings-evolution input{width:100%;min-height:var(--input-height);padding:var(--sp-3);border:1px solid var(--field-border);border-radius:var(--radius-md);background:var(--field-bg)}.settings-evolution>button{justify-self:start}.settings-connected{font-size:var(--font-sm);color:#047857;padding:var(--sp-3);border-radius:var(--radius-md);background:#ecfdf5}.settings-error{font-size:var(--font-sm);color:#b91c1c;padding:var(--sp-3);border-radius:var(--radius-md);background:#fef2f2}.autocomplete-wrap{position:relative}.autocomplete-wrap input{width:100%;min-height:var(--input-height);padding:var(--sp-3);border:1px solid var(--field-border);border-radius:var(--radius-md);background:var(--field-bg)}.autocomplete-list{z-index:90;border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-modal);background:#fff;max-height:200px;margin:4px 0 0;padding:4px;list-style:none;position:absolute;top:100%;left:0;right:0;overflow-y:auto}.autocomplete-list li{border-radius:var(--radius-sm);cursor:pointer;gap:2px;padding:8px 10px;display:grid}.autocomplete-list li:hover{background:#f0f4ff}.autocomplete-list li strong{font-size:var(--font-sm)}.autocomplete-list li small{color:var(--muted);font-size:11px}.notify-chips{flex-wrap:wrap;gap:6px;margin-bottom:4px;display:flex}.notify-chip{color:#1a3c6e;background:#e8f0fe;border-radius:20px;align-items:center;gap:4px;padding:3px 10px;font-size:12px;font-weight:600;display:inline-flex}.notify-chip button{cursor:pointer;color:#1a3c6e;background:0 0;border:none;padding:0 2px;font-size:14px;line-height:1}.field-hint{color:var(--muted);margin-top:-2px;font-size:11px;font-weight:400}.notify-chips{flex-wrap:wrap;gap:6px;display:flex}.notify-chip{align-items:center;gap:var(--sp-1);padding:var(--sp-1) var(--sp-3);border-radius:var(--radius-pill);font-size:var(--font-sm);color:var(--blue);background:var(--blue-soft);font-weight:600;display:inline-flex}.fiscal-type-selector{gap:var(--sp-2);flex-wrap:wrap;margin-top:2px;display:flex}.fiscal-type-option{align-items:center;gap:var(--sp-2);padding:var(--sp-3) var(--sp-4);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--field-bg);cursor:pointer;font-size:var(--font-base);color:var(--ink);transition:border-color var(--transition), background var(--transition);font-weight:600;display:flex}.fiscal-type-option:hover{border-color:var(--blue);background:var(--blue-soft)}.fiscal-type-option.selected{border-color:var(--blue);background:var(--blue-soft);color:var(--blue)}.fiscal-type-option input[type=radio]{accent-color:var(--blue)}.drop-zone{justify-content:center;align-items:center;gap:var(--sp-2);min-height:100px;padding:var(--sp-5);border:2px dashed var(--line);border-radius:var(--radius-md);color:var(--muted);cursor:pointer;text-align:center;font-size:var(--font-base);transition:border-color var(--transition), background var(--transition);background:#fafbfd;flex-direction:column;display:flex}.drop-zone:hover{background:var(--blue-soft);border-color:#a9c4ed}.drop-zone.active{border-color:var(--blue);background:var(--blue-soft);color:var(--blue)}.attachment-grid{gap:var(--sp-3);margin-top:var(--sp-3);grid-template-columns:repeat(auto-fill,minmax(110px,1fr));display:grid}.attachment-preview{padding:var(--sp-3);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--field-bg);color:inherit;transition:border-color var(--transition);flex-direction:column;align-items:center;gap:6px;text-decoration:none;display:flex;position:relative;overflow:hidden}.attachment-preview img{object-fit:cover;border-radius:6px;width:100%;height:80px}.attachment-file-icon{width:100%;height:80px;color:var(--muted);background:#edf0f4;border-radius:6px;place-items:center;display:grid}.attachment-name{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:11px;overflow:hidden}.attachment-remove{top:var(--sp-1);right:var(--sp-1);color:#fff;cursor:pointer;z-index:2;width:22px;height:22px;transition:background var(--transition);background:#b23636cc;border:0;border-radius:50%;place-items:center;display:grid;position:absolute}.attachment-remove:hover{background:var(--red)}.sla-badge{padding:var(--sp-1) var(--sp-3);border-radius:var(--radius-pill);color:var(--green);white-space:nowrap;background:#e7f6ef;align-items:center;gap:5px;font-size:11px;font-weight:700;display:inline-flex}.sla-warning{color:var(--yellow);background:var(--yellow-soft)}.sla-critical{color:var(--red);background:var(--red-soft)}.fiscal-field-group{gap:var(--sp-4);padding:var(--sp-5);border:1px solid var(--line);border-radius:var(--radius-md);background:#fafbfd;display:grid}.fiscal-field-group label{gap:var(--sp-2);color:var(--label);font-size:var(--font-sm);font-weight:700;display:grid}.fiscal-field-group input,.fiscal-field-group textarea{width:100%;min-height:var(--input-height);padding:var(--sp-3);border:1px solid var(--field-border);border-radius:var(--radius-md);background:#fff}.fiscal-field-group textarea{resize:vertical}.fiscal-request-form{padding:var(--sp-5);gap:var(--sp-4);display:grid}.fiscal-request-form>label{gap:var(--sp-2);color:var(--label);font-size:var(--font-sm);font-weight:700;display:grid}.fiscal-request-form input,.fiscal-request-form select,.fiscal-request-form textarea{width:100%;min-height:var(--input-height);padding:var(--sp-3);border:1px solid var(--field-border);border-radius:var(--radius-md);background:var(--field-bg)}.fiscal-request-form textarea{resize:vertical}.fiscal-request-form>footer{padding-top:var(--sp-1);justify-content:flex-end;gap:var(--sp-2);display:flex}.fiscal-request-form>footer button{height:var(--btn-height);padding:0 var(--sp-5);border:1px solid var(--line);border-radius:var(--radius-md);cursor:pointer;transition:background var(--transition);background:#fff}.fiscal-request-form>footer button[type=submit]{color:#fff;border-color:var(--blue);background:var(--blue);font-weight:700}.fiscal-request-form>footer button[type=submit]:disabled{opacity:.5;cursor:not-allowed}.fiscal-modal{width:min(720px,100%)}.drawer-attachments{margin-top:var(--sp-1)}.drawer-attachments .attachment-preview{cursor:pointer;transition:border-color var(--transition)}.drawer-attachments .attachment-preview:hover{border-color:var(--blue)}.kanban-toolbar{align-items:center;gap:var(--sp-4);padding:0 0 var(--sp-4);display:flex}.kanban-search{align-items:center;gap:var(--sp-2);max-width:360px;height:var(--input-height);padding:0 var(--sp-3);border:1px solid var(--field-border);border-radius:var(--radius-md);background:var(--field-bg);color:var(--muted);flex:1;display:flex}.kanban-search input{width:100%;font-size:var(--font-base);color:var(--text);background:0 0;border:0;outline:none}.kanban-count{font-size:var(--font-sm);color:var(--muted);margin-left:auto}.kanban-container{gap:var(--sp-4);padding-bottom:var(--sp-4);min-height:400px;display:flex;overflow-x:auto}.kanban-column{border-radius:var(--radius-lg);background:#f4f6f9;flex-direction:column;flex:1;min-width:220px;max-width:320px;display:flex}.kanban-column-header{padding:var(--sp-3) var(--sp-4);border-bottom:3px solid var(--col-color,var(--line));justify-content:space-between;align-items:center;display:flex}.kanban-column-title{font-size:var(--font-base);color:var(--heading);font-weight:700}.kanban-column-count{font-size:var(--font-xs);color:#fff;background:var(--col-color,var(--muted));border-radius:var(--radius-pill);padding:2px 8px;font-weight:700}.kanban-column-body{padding:var(--sp-3);gap:var(--sp-3);flex-direction:column;flex:1;display:flex;overflow-y:auto}.kanban-card{border:1px solid var(--line);border-radius:var(--radius-md);padding:var(--sp-3) var(--sp-4);cursor:pointer;transition:box-shadow var(--transition), border-color var(--transition);background:#fff}.kanban-card:hover{border-color:var(--blue);box-shadow:0 2px 8px #2369d81f}.kanban-card-header{margin-bottom:var(--sp-1);justify-content:space-between;align-items:center;display:flex}.kanban-card-id{font-size:var(--font-xs);color:var(--muted);font-weight:600}.kanban-card-title{font-size:var(--font-base);color:var(--heading);margin:0 0 var(--sp-2);font-weight:600;line-height:1.35}.kanban-card-category{font-size:var(--font-xs);color:var(--muted);border-radius:var(--radius-pill);margin-bottom:var(--sp-2);background:#edf0f4;padding:2px 8px;display:inline-block}.kanban-card-footer{font-size:var(--font-xs);color:var(--muted);justify-content:space-between;display:flex}.kanban-card-sla{font-size:var(--font-xs);color:var(--yellow);margin-top:var(--sp-2);font-weight:600}.kanban-priority{text-transform:uppercase;letter-spacing:.5px;color:var(--priority-color,var(--muted));border:1px solid var(--priority-color,var(--line));border-radius:var(--radius-pill);padding:1px 6px;font-size:10px;font-weight:700}.kanban-empty{text-align:center;color:var(--muted);font-size:var(--font-sm);padding:var(--sp-5) 0}.kanban-card[draggable=true]{cursor:grab}.kanban-card[draggable=true]:active{cursor:grabbing}.kanban-card-dragging{opacity:.4;border-style:dashed}.kanban-column-dragover{outline:2px dashed var(--blue);outline-offset:-2px;border-radius:var(--radius-lg);background:#e8edfa}.kanban-grip{color:var(--muted);vertical-align:middle;margin-right:2px}.kanban-card-delete{color:var(--muted);cursor:pointer;border-radius:var(--radius-sm);transition:color var(--transition), background var(--transition);background:0 0;border:none;padding:2px}.kanban-card-delete:hover{color:var(--red);background:var(--red-soft)}.kanban-error{justify-content:space-between;align-items:center;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);margin-bottom:var(--sp-4);background:var(--red-soft);border:1px solid var(--red-border);border-radius:var(--radius-md);color:var(--red);font-size:var(--font-sm);display:flex}.kanban-error button{color:var(--red);cursor:pointer;background:0 0;border:none}.kanban-loading{bottom:var(--sp-5);right:var(--sp-5);background:var(--navy);color:#fff;padding:var(--sp-2) var(--sp-4);border-radius:var(--radius-pill);font-size:var(--font-sm);z-index:1000;box-shadow:var(--shadow-lg);font-weight:600;position:fixed}.kanban-create-modal{width:min(560px,95vw)}.kanban-modal-header{padding-bottom:var(--sp-4);border-bottom:1px solid var(--line);margin-bottom:var(--sp-4);justify-content:space-between;align-items:center;display:flex}.kanban-modal-header h2{font-size:var(--font-lg);color:var(--heading);margin:0;font-weight:700}.kanban-modal-header button{color:var(--muted);cursor:pointer;background:0 0;border:none}.kanban-create-form label{gap:var(--sp-1);font-size:var(--font-sm);color:var(--label);margin-bottom:var(--sp-4);flex-direction:column;font-weight:600;display:flex}.kanban-create-form input,.kanban-create-form textarea,.kanban-create-form select{height:var(--input-height);padding:0 var(--sp-3);border:1px solid var(--field-border);border-radius:var(--radius-md);background:var(--field-bg);font-size:var(--font-base);color:var(--text)}.kanban-create-form textarea{height:auto;padding:var(--sp-2) var(--sp-3);resize:vertical}.kanban-create-form footer{justify-content:flex-end;gap:var(--sp-2);padding-top:var(--sp-3);border-top:1px solid var(--line);display:flex}.kanban-create-form footer button{height:var(--btn-height);padding:0 var(--sp-5);border:1px solid var(--line);border-radius:var(--radius-md);cursor:pointer;transition:background var(--transition);background:#fff;font-weight:600}.kanban-create-form footer button[type=submit]{color:#fff;border-color:var(--blue);background:var(--blue)}.kanban-create-form footer button[type=submit]:disabled{opacity:.5;cursor:not-allowed}.kanban-form-error{padding:var(--sp-2) var(--sp-3);background:var(--red-soft);border:1px solid var(--red-border);border-radius:var(--radius-md);color:var(--red);font-size:var(--font-sm);margin-bottom:var(--sp-3)}.kpi-section{margin-top:var(--sp-5)}.kpi-section>h2{margin-bottom:var(--sp-4);font-size:var(--font-md);letter-spacing:-.015em}.kpi-grid{gap:var(--sp-4);margin-bottom:var(--sp-5);grid-template-columns:repeat(3,1fr);display:grid}.kpi-panel{padding:var(--sp-5);border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-md)}.kpi-panel h3{margin:0 0 var(--sp-4);color:var(--ink);font-size:14px;font-weight:700}.kpi-stat-grid{gap:var(--sp-3);grid-template-columns:1fr 1fr;display:grid}.kpi-stat{padding:var(--sp-3);border-radius:var(--radius-md);background:var(--canvas);gap:2px;display:grid}.kpi-stat-label{font-size:var(--font-xs);color:var(--muted);font-weight:600}.kpi-stat-value{font-size:var(--font-lg);letter-spacing:-.03em;font-weight:800}.kpi-stat-value.accent-blue{color:var(--blue)}.kpi-stat-value.accent-green{color:var(--green)}.kpi-stat-value.accent-orange{color:var(--orange)}.kpi-stat-value.accent-red{color:var(--red)}.kpi-stat-value.accent-purple{color:var(--purple)}.kpi-bar-list{gap:var(--sp-2);margin-top:var(--sp-3);display:grid}.kpi-bar-row{align-items:center;gap:var(--sp-2);display:flex}.kpi-bar-label{font-size:var(--font-xs);color:var(--muted);white-space:nowrap;text-overflow:ellipsis;flex:0 0 100px;font-weight:600;overflow:hidden}.kpi-bar-track{border-radius:var(--radius-pill);background:#e9edf3;flex:1;height:8px;overflow:hidden}.kpi-bar-fill{border-radius:inherit;height:100%;transition:width .4s}.kpi-bar-fill.blue{background:var(--blue)}.kpi-bar-fill.orange{background:var(--orange)}.kpi-bar-fill.green{background:var(--green)}.kpi-bar-fill.purple{background:var(--purple)}.kpi-bar-count{font-size:var(--font-xs);text-align:right;color:var(--label);flex:0 0 30px;font-weight:700}.kpi-trend{margin-top:var(--sp-3)}.kpi-trend-header{margin-bottom:var(--sp-3);justify-content:space-between;align-items:center;display:flex}.kpi-trend-header h3{margin:0;font-size:14px}.kpi-trend-legend{gap:var(--sp-3);font-size:var(--font-xs);color:var(--muted);font-weight:600;display:flex}.kpi-trend-legend span{align-items:center;gap:4px;display:flex}.kpi-trend-legend i{border-radius:2px;width:10px;height:10px;font-style:normal;display:inline-block}.kpi-trend-chart{height:80px;padding:0 var(--sp-1);align-items:flex-end;gap:2px;display:flex}.kpi-trend-day{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;gap:1px;height:100%;display:flex}.kpi-trend-bar{border-radius:3px 3px 0 0;width:100%;min-height:2px;transition:height .3s}.kpi-trend-bar.blue{background:var(--blue)}.kpi-trend-bar.orange{background:var(--orange)}.kpi-trend-bar.green{background:var(--green)}.kpi-trend-labels{margin-top:var(--sp-1);gap:2px;display:flex}.kpi-trend-labels span{text-align:center;color:var(--muted);flex:1;font-size:10px}@media (max-width:1180px){.kpi-grid{grid-template-columns:1fr 1fr}}@media (max-width:620px){.kpi-grid{grid-template-columns:1fr}}.permission-groups h3{margin:var(--sp-3) 0 var(--sp-2);font-size:.95rem;font-weight:600}.permission-group{border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--sp-2) var(--sp-3);margin-bottom:var(--sp-2)}.permission-group legend{padding:0 var(--sp-1);font-size:.9rem;font-weight:600}.permission-group legend label{align-items:center;gap:var(--sp-1);cursor:pointer;display:flex}.permission-items{gap:var(--sp-1) var(--sp-3);padding-top:var(--sp-1);grid-template-columns:repeat(auto-fill,minmax(200px,1fr));display:grid}.permission-items label{align-items:center;gap:var(--sp-1);cursor:pointer;font-size:.85rem;display:flex}.modal-footer{justify-content:flex-end;gap:var(--sp-2);padding-top:var(--sp-3);border-top:1px solid var(--border);margin-top:var(--sp-3);display:flex}.invite-toggle{align-items:center;gap:var(--sp-2);cursor:pointer;padding:var(--sp-1) 0;font-size:.9rem;display:flex}.invite-toggle input[type=checkbox]{width:16px;height:16px}@media (max-width:980px){.notice-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:620px){.module-heading{flex-direction:column;align-items:stretch}.module-toolbar{flex-wrap:wrap;align-items:stretch}.module-toolbar label{flex-basis:100%}.module-toolbar select{flex:1}.module-toolbar button{font-size:0}.module-toolbar button svg{margin:auto}.notice-grid,.form-grid{grid-template-columns:1fr}.module-pagination>span{display:none}.module-pagination{justify-content:center}.module-panel{border-radius:var(--radius-md)}.fiscal-type-selector{flex-direction:column}.attachment-grid{grid-template-columns:repeat(auto-fill,minmax(90px,1fr))}.kanban-container{flex-direction:column}.kanban-column{min-width:100%;max-width:100%}.kanban-toolbar{flex-direction:column;align-items:stretch}.kanban-search{max-width:100%}}
