:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-bg:#f4f5f7;--color-surface:#fff;--color-border:#d8dce1;--color-text:#1f2430;--color-text-muted:#5b6472;--color-primary:#1d4ed8;--color-primary-hover:#1e40af;--color-danger:#b91c1c;--color-danger-bg:#fef2f2;--color-success:#15803d;--color-success-bg:#f0fdf4;--color-warning:#b45309;--color-warning-bg:#fffbeb;--color-info:#475569;--color-info-bg:#f1f5f9;--sidebar-width:248px;--sidebar-width-collapsed:76px;--header-height:64px;--shell-sidebar-bg:#121417;--shell-sidebar-border:#25292e;--shell-sidebar-text:#d7dbe0;--shell-sidebar-text-muted:#8f969f;--shell-sidebar-active-bg:#e6e8eb;--shell-sidebar-active-text:#17191c;--shell-sidebar-hover-bg:#191c20;--shell-platinum:#d9dde2;--shell-platinum-dark:#8b8f96;--shell-charcoal:#191b1f;--shell-charcoal-soft:#22252a;--shell-main-bg:#f6f7f9;--shell-surface-soft:#f2f4f6;--shell-border:#e1e4e8;--shell-border-strong:#cdd2d8;--shell-text:#1a1d21;--shell-text-secondary:#626872;--shell-success-soft:#e9f7ef;--shell-warning-soft:#fff5e5;--shell-danger-soft:#fdecec;--shell-info:#4f6f8f;--shell-info-soft:#edf3f8;--shell-shadow-subtle:0 1px 2px #14161a08;--shell-shadow-card:0 4px 16px #14161a0a;--shell-shadow-overlay:0 10px 30px #14161a14;font-family:-apple-system,Segoe UI,Roboto,Arial,sans-serif}*{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--color-bg);color:var(--color-text);margin:0;font-size:14px}a{color:var(--color-primary)}h1,h2,h3,h4{margin:0 0 .5em;font-weight:600}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}.btn{border:1px solid var(--color-border);background:var(--color-surface);border-radius:6px;align-items:center;gap:6px;padding:7px 14px;font-weight:500;line-height:1.2;display:inline-flex}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.btn-primary:hover:not(:disabled){background:var(--color-primary-hover)}.btn-danger{background:var(--color-danger);border-color:var(--color-danger);color:#fff}.btn-link{color:var(--color-primary);background:0 0;border:none;padding:0}.field{flex-direction:column;gap:4px;margin-bottom:14px;display:flex}.field label{font-size:13px;font-weight:500}.field input,.field select,.field textarea{border:1px solid var(--color-border);background:var(--color-surface);border-radius:6px;width:100%;padding:8px 10px}.field input:disabled,.field select:disabled,.field textarea:disabled{background:var(--color-bg);color:var(--color-text-muted)}.field-error{color:var(--color-danger);font-size:12.5px}.password-input-row{align-items:stretch;gap:6px;display:flex}.password-input-row input{flex:1}.password-input-toggle{border:1px solid var(--color-border);background:var(--color-surface);cursor:pointer;border-radius:6px;padding:0 12px;font-size:15px;line-height:1}.combobox{position:relative}.phone-input-row{align-items:stretch;gap:6px;display:flex}.phone-input-national{flex:1;min-width:0}.row-status{white-space:nowrap;font-size:12.5px}.row-status-saving{color:var(--color-text-muted)}.row-status-saved{color:var(--color-success,#16a34a)}.row-status-error{color:var(--color-danger)}.combobox input{border:1px solid var(--color-border);background:var(--color-surface);border-radius:6px;width:100%;padding:8px 10px}.combobox input:disabled{background:var(--color-bg);color:var(--color-text-muted)}.combobox-list{z-index:20;background:var(--color-surface);border:1px solid var(--color-border);border-radius:6px;max-height:260px;margin:0;padding:4px 0;list-style:none;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto;box-shadow:0 4px 12px #00000014}.combobox-option{cursor:pointer;padding:7px 10px;font-size:13.5px}.combobox-option.highlighted{background:var(--color-bg)}.combobox-option.selected{font-weight:600}.combobox-empty{color:var(--color-text-muted);padding:7px 10px;font-size:13px}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;padding:20px}.alert{border-radius:6px;margin-bottom:14px;padding:10px 14px;font-size:13.5px}.alert-error{background:var(--color-danger-bg);color:var(--color-danger);border:1px solid #fecaca}.alert-success{background:var(--color-success-bg);color:var(--color-success);border:1px solid #bbf7d0}.alert-warning{background:var(--color-warning-bg);color:var(--color-warning);border:1px solid #fde68a}table{border-collapse:collapse;width:100%;font-size:13.5px}th,td{text-align:left;border-bottom:1px solid var(--color-border);white-space:nowrap;padding:9px 10px}th{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.02em;font-size:12.5px;font-weight:600}tbody tr:hover{background:#f8fafc}.badge{color:#374151;background:#e5e7eb;border-radius:999px;padding:2px 9px;font-size:12px;font-weight:600;display:inline-block}.badge-success{background:var(--color-success-bg);color:var(--color-success)}.badge-warning{background:var(--color-warning-bg);color:var(--color-warning)}.badge-danger{background:var(--color-danger-bg);color:var(--color-danger)}.badge-primary{color:var(--color-primary);background:#eff6ff}.app-shell{grid-template-columns:var(--sidebar-width) 1fr;grid-template-rows:var(--header-height) 1fr;grid-template-areas:"sidebar header""sidebar main";min-height:100vh;transition:grid-template-columns .18s;display:grid}.app-shell.sidebar-collapsed{grid-template-columns:var(--sidebar-width-collapsed) 1fr}.app-header,.dashboard-page{--color-bg:var(--shell-main-bg);--color-border:var(--shell-border);--color-text:var(--shell-text);--color-text-muted:var(--shell-text-secondary);--color-success-bg:var(--shell-success-soft);--color-warning-bg:var(--shell-warning-soft);--color-danger-bg:var(--shell-danger-soft);--color-info:var(--shell-info);--color-info-bg:var(--shell-info-soft)}.dashboard-page{--dashboard-series-1:#2f6db3;--dashboard-series-2:#c4622d;--dashboard-series-3:#178f74;--dashboard-series-4:#c08a00;--dashboard-series-5:#c25c86;--dashboard-series-6:#4f7f2a;--dashboard-series-7:#5b4aa8;--dashboard-series-8:#b8463f;--dashboard-series-overflow-1:#8b8f96;--dashboard-series-overflow-2:#b7bdc5;--dashboard-series-overflow-3:#626872;--dashboard-series-overflow-4:#cdd2d8;--dashboard-blue:#2f6db3;--dashboard-blue-soft:#eaf1f9;--dashboard-violet:#5b4aa8;--dashboard-violet-soft:#f0eefa;--dashboard-rose:#b04a78;--dashboard-rose-soft:#fbeef4;--dashboard-teal:#147a63;--dashboard-teal-soft:#e6f4f0}.app-header{--color-primary:var(--shell-charcoal);--color-primary-hover:var(--shell-charcoal-soft)}.app-header .btn-primary{padding:10px 16px;font-weight:600}.app-header{background:var(--color-surface);border-bottom:1px solid var(--color-border);grid-area:header;align-items:center;gap:16px;padding:0 24px;display:flex}.app-header-toggle{border:1px solid var(--color-border);background:var(--color-surface);cursor:pointer;width:38px;height:38px;color:var(--color-text-muted);border-radius:6px;flex:none;justify-content:center;align-items:center;display:flex}.app-header-toggle:hover{background:var(--color-bg);color:var(--color-text)}.app-header-search{flex:auto;max-width:600px;position:relative}.app-header-search input{border:1px solid var(--color-border);background:var(--color-surface);width:100%;color:var(--color-text);box-shadow:var(--shell-shadow-subtle);border-radius:6px;padding:9px 14px 9px 40px;font-size:14px;line-height:18px}.app-header-search input:focus{border-color:var(--shell-platinum-dark);background:var(--color-surface);outline:none;box-shadow:0 0 0 3px #8b8f9624}.app-header-search .search-icon{color:var(--color-text-muted);pointer-events:none;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.app-header-search .search-kbd{color:var(--color-text-muted);border:1px solid var(--color-border);background:var(--color-surface);border-radius:4px;padding:1px 6px;font-size:11px;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.app-header-spacer{flex:auto}.app-header-actions{flex:none;align-items:center;gap:12px;display:flex}.app-header-bell{border:1px solid var(--color-border);background:var(--color-surface);width:38px;height:38px;color:var(--color-text-muted);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;display:flex;position:relative}.app-header-bell .bell-badge{background:var(--color-danger);color:#fff;border-radius:999px;justify-content:center;align-items:center;min-width:16px;height:16px;padding:0 4px;font-size:10px;font-weight:700;display:flex;position:absolute;top:-4px;right:-4px}.app-header-user{border:1px solid var(--color-border);background:var(--color-surface);cursor:pointer;border-radius:8px;align-items:center;gap:10px;padding:3px 11px 3px 3px;display:flex}.app-header-user .avatar{background:var(--shell-charcoal);color:#fff;border-radius:6px;flex:none;justify-content:center;align-items:center;width:32px;height:32px;font-size:13px;font-weight:700;display:flex}.app-header-user .who{text-align:left;flex-direction:column;line-height:1.25;display:flex}.app-header-user .who .name{color:var(--color-text);font-size:14px;font-weight:600}.app-header-user .who .role{color:var(--color-text-muted);font-size:12px}.app-header-menu{right:24px;top:calc(var(--header-height) + 6px);background:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--shell-shadow-overlay);z-index:40;border-radius:10px;min-width:200px;padding:6px;position:absolute}.app-header-menu a,.app-header-menu button{text-align:left;width:100%;color:var(--color-text);cursor:pointer;background:0 0;border:none;border-radius:7px;padding:10px 11px;font-size:13.5px;text-decoration:none;display:block}.app-header-menu a:hover,.app-header-menu button:hover{background:var(--color-bg)}.app-sidebar{background:var(--shell-sidebar-bg);color:var(--shell-sidebar-text);border-right:1px solid var(--shell-sidebar-border);flex-direction:column;grid-area:sidebar;display:flex;overflow:hidden}.app-sidebar .brand{border-bottom:1px solid var(--shell-sidebar-border);align-items:center;gap:10px;min-height:77px;margin-bottom:6px;padding:14px 18px;display:flex}.app-sidebar .brand img{flex:none;width:64px;height:auto;display:block}.app-sidebar .brand .brand-text{white-space:nowrap;flex-direction:column;gap:3px;min-width:0;line-height:1.2;display:flex}.app-sidebar .brand .brand-text .brand-name{color:#fff;letter-spacing:.02em;font-size:15px;font-weight:700}.app-sidebar .brand .brand-text .brand-sub{color:var(--shell-platinum-dark);text-transform:uppercase;letter-spacing:.08em;font-size:10.5px;font-weight:600}.app-shell.sidebar-collapsed .app-sidebar .brand{justify-content:center;padding:14px 0}.app-shell.sidebar-collapsed .app-sidebar .brand img{width:56px}.app-shell.sidebar-collapsed .app-sidebar .brand .brand-text{display:none}.app-sidebar nav{flex:auto;padding:8px 12px 12px;overflow-y:auto}.app-sidebar nav a,.app-sidebar .nav-group-toggle{color:var(--shell-sidebar-text);white-space:nowrap;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:center;gap:12px;width:100%;margin-bottom:2px;padding:11px 13px;font-family:inherit;font-size:15px;text-decoration:none;display:flex;overflow:hidden}.app-sidebar nav a .nav-icon,.app-sidebar .nav-group-toggle .nav-icon{opacity:.85;flex:none;justify-content:center;align-items:center;width:19px;height:19px;display:flex}.app-sidebar nav a:hover,.app-sidebar .nav-group-toggle:hover{background:var(--shell-sidebar-hover-bg);color:#fff}.app-sidebar nav a.active{background:var(--shell-sidebar-active-bg);color:var(--shell-sidebar-active-text);font-weight:700}.app-sidebar .nav-group-toggle .chevron{opacity:.7;margin-left:auto;transition:transform .15s}.app-sidebar .nav-group.open .nav-group-toggle .chevron{transform:rotate(90deg)}.app-sidebar .nav-group-items{padding-left:8px}.app-sidebar .nav-group-items a{padding:9px 12px 9px 31px;font-size:13.5px}.nav-section-title{text-transform:uppercase;letter-spacing:.08em;color:var(--shell-sidebar-text-muted);padding:16px 12px 6px;font-size:11px;font-weight:700}.app-shell.sidebar-collapsed .app-sidebar nav a span:not(.nav-icon),.app-shell.sidebar-collapsed .app-sidebar .nav-group-toggle span:not(.nav-icon),.app-shell.sidebar-collapsed .nav-section-title,.app-shell.sidebar-collapsed .app-sidebar .nav-group-items,.app-shell.sidebar-collapsed .app-sidebar .chevron{display:none}.app-shell.sidebar-collapsed .app-sidebar nav a,.app-shell.sidebar-collapsed .app-sidebar .nav-group-toggle{justify-content:center;padding:11px 0}.app-sidebar-footer{border-top:1px solid var(--shell-sidebar-border);padding:14px}.app-shell.sidebar-collapsed .app-sidebar-footer{display:none}.app-main{background:var(--shell-main-bg);grid-area:main;padding:24px;overflow-x:auto}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;display:flex}.toolbar{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:14px;display:flex}.tabs{border-bottom:1px solid var(--color-border);flex-wrap:wrap;gap:4px;margin-bottom:18px;display:flex}.tabs button{color:var(--color-text-muted);background:0 0;border:none;border-bottom:2px solid #0000;padding:10px 14px;font-weight:500}.tabs button.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.btn.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.auth-page{background:var(--color-bg);justify-content:center;align-items:center;min-height:100vh;display:flex}.auth-card{width:360px;max-width:calc(100vw - 32px)}.login-page{--login-s:min(calc(100vw / 1672), calc(100vh / 941));--login-text:#f5f7fa;--login-text-soft:#eef1f5d6;--login-line:#ebf0f64d;--login-focus:#eef2f7d9;--login-icon-user:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='8' r='4'/%3E%3Cpath d='M4 21c0-4.4 3.6-7 8-7s8 2.6 8 7'/%3E%3C/svg%3E");--login-icon-lock:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='5' y='11' width='14' height='10' rx='2'/%3E%3Cpath d='M8 11V8a4 4 0 0 1 8 0v3'/%3E%3Ccircle cx='12' cy='16' r='1'/%3E%3C/svg%3E");--login-icon-arrow:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 12h15M13 6l6 6-6 6'/%3E%3C/svg%3E");min-height:max(100vh,600px);color:var(--login-text);background:#0c0d10 url(/assets/login-backdrop-uuF9dhkI.svg) 50%/cover no-repeat;position:relative;overflow:hidden}.login-brand{text-align:center;flex-direction:column;align-items:center;display:flex;position:absolute;top:41%;left:33.3%;transform:translate(-50%,-50%)}.login-brand-logo{width:max(220px, calc(411 * var(--login-s)));height:auto;margin-bottom:calc(max(220px, calc(411 * var(--login-s))) * -.08);display:block}.login-brand-name{font-size:max(34px, calc(56 * var(--login-s)));letter-spacing:.26em;background:linear-gradient(#fff 0%,#e4e7eb 45%,#a9afb7 100%);color:#0000;-webkit-background-clip:text;background-clip:text;margin:0 -.26em 0 0;font-weight:700;line-height:1.15}.login-brand-name-light{font-weight:300}.login-brand-sub{align-items:center;gap:max(12px, calc(17 * var(--login-s)));margin:max(10px, calc(18 * var(--login-s))) 0 0;font-size:max(15px, calc(20 * var(--login-s)));letter-spacing:.05em;color:#c9cdd3;font-weight:400;display:flex}.login-brand-sub:before,.login-brand-sub:after{content:"";width:max(36px, calc(55 * var(--login-s)));background:#dce1e78c;height:1px}.login-panel{width:max(380px, calc(578 * var(--login-s)));padding:max(44px, calc(84 * var(--login-s))) max(34px, calc(81 * var(--login-s))) max(40px, calc(77 * var(--login-s)));border-radius:max(18px, calc(24 * var(--login-s)));-webkit-backdrop-filter:blur(16px)saturate(115%);backdrop-filter:blur(16px)saturate(115%);background:linear-gradient(155deg,#ffffff24 0%,#ffffff0d 45%,#ffffff14 100%),#282c3257;border:1px solid #ffffff57;position:absolute;top:47.4%;left:71.2%;transform:translate(-50%,-50%);box-shadow:0 30px 80px #00000073,inset 0 1px #ffffff47,inset 0 0 0 1px #ffffff0a}.login-title{text-align:center;font-size:max(30px, calc(40 * var(--login-s)));letter-spacing:.01em;color:var(--login-text);margin:0;font-weight:300;line-height:1.2}.login-title-divider{width:max(44px, calc(56 * var(--login-s)));height:1px;margin:max(18px, calc(27 * var(--login-s))) auto max(28px, calc(43 * var(--login-s)));background:#ffffff8c}.login-form .field{margin:0 0 max(16px, calc(25 * var(--login-s)));gap:0;position:relative}.login-form .field>label{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.login-form input{width:100%;height:max(50px, calc(65 * var(--login-s)));padding:0 max(44px, calc(56 * var(--login-s))) 0 max(48px, calc(86 * var(--login-s)));border:1px solid var(--login-line);border-radius:max(10px, calc(11 * var(--login-s)));color:var(--login-text);font-size:max(15px, calc(18 * var(--login-s)));background:#ffffff0d;transition:border-color .15s,box-shadow .15s}.login-form input::placeholder{color:var(--login-text-soft);opacity:1}.login-form input:hover{border-color:#ebf0f67a}.login-form input:focus{border-color:var(--login-focus);outline:none;box-shadow:0 0 0 3px #dce2ea24}.login-form input:-webkit-autofill{-webkit-text-fill-color:var(--login-text);caret-color:var(--login-text);transition:background-color 9999s ease-out;-webkit-box-shadow:inset 0 0 0 1000px #2a2e34}.login-form input:-webkit-autofill:hover{-webkit-text-fill-color:var(--login-text);caret-color:var(--login-text);transition:background-color 9999s ease-out;-webkit-box-shadow:inset 0 0 0 1000px #2a2e34}.login-form input:-webkit-autofill:focus{-webkit-text-fill-color:var(--login-text);caret-color:var(--login-text);transition:background-color 9999s ease-out;-webkit-box-shadow:inset 0 0 0 1000px #2a2e34}.login-field-username:before,.login-field-password .password-input-row:before{content:"";z-index:1;left:max(16px, calc(28 * var(--login-s)));width:max(20px, calc(24 * var(--login-s)));height:max(20px, calc(24 * var(--login-s)));background-color:var(--login-text-soft);pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}.login-field-username:before{-webkit-mask:var(--login-icon-user) center / contain no-repeat;-webkit-mask:var(--login-icon-user) center / contain no-repeat;mask:var(--login-icon-user) center / contain no-repeat}.login-field-password .password-input-row:before{-webkit-mask:var(--login-icon-lock) center / contain no-repeat;-webkit-mask:var(--login-icon-lock) center / contain no-repeat;mask:var(--login-icon-lock) center / contain no-repeat}.login-form .password-input-row{display:block;position:relative}.login-form .password-input-row:has(input:invalid:not(:-webkit-autofill)):after{content:"Parola";left:max(48px, calc(86 * var(--login-s)));font-size:max(15px, calc(18 * var(--login-s)));color:var(--login-text-soft);pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}.login-form .password-input-toggle{z-index:1;top:50%;right:max(8px, calc(22 * var(--login-s)));width:max(36px, calc(40 * var(--login-s)));height:max(36px, calc(40 * var(--login-s)));color:#0000;cursor:pointer;background:0 0;border:none;border-radius:8px;padding:0;font-size:0;position:absolute;transform:translateY(-50%)}.login-form .password-input-toggle:before{content:"";background-color:var(--login-text-soft);-webkit-mask:var(--login-eye-icon) center / contain no-repeat;-webkit-mask:var(--login-eye-icon) center / contain no-repeat;mask:var(--login-eye-icon) center / contain no-repeat;position:absolute;inset:20%}.login-form .password-input-toggle:hover{background:#ffffff12}.login-form .password-input-toggle:hover:before{background-color:var(--login-text)}.login-form .password-input-toggle[aria-label=Parolayı\ göster]{--login-eye-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E")}.login-form .password-input-toggle[aria-label=Parolayı\ gizle]{--login-eye-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M17.94 17.94A10.07 10.07 0 0 1 12 20c-7 0-11-8-11-8a18.45 18.45 0 0 1 5.06-5.94M9.9 4.24A9.12 9.12 0 0 1 12 4c7 0 11 8 11 8a18.5 18.5 0 0 1-2.16 3.19m-6.72-1.07a3 3 0 1 1-4.24-4.24'/%3E%3Cline x1='1' y1='1' x2='23' y2='23'/%3E%3C/svg%3E")}.login-submit{width:100%;height:max(52px, calc(66 * var(--login-s)));margin-top:max(24px, calc(40 * var(--login-s)));border-radius:max(12px, calc(14 * var(--login-s)));color:#fff;font-family:inherit;font-size:max(16px, calc(20 * var(--login-s)));letter-spacing:.01em;cursor:pointer;background:linear-gradient(#ffffff4d 0%,#ffffff1a 38%,#1e2126b8 100%);border:1px solid #f0f4f899;justify-content:center;align-items:center;font-weight:500;transition:filter .15s,transform .15s;display:flex;position:relative;box-shadow:inset 0 1px #ffffff73,0 10px 26px #0000004d}.login-submit-arrow{right:max(18px, calc(26 * var(--login-s)));width:max(20px, calc(26 * var(--login-s)));height:max(20px, calc(26 * var(--login-s)));-webkit-mask:var(--login-icon-arrow) center / contain no-repeat;-webkit-mask:var(--login-icon-arrow) center / contain no-repeat;mask:var(--login-icon-arrow) center / contain no-repeat;background-color:currentColor;position:absolute;top:50%;transform:translateY(-50%)}.login-submit:hover:not(:disabled){filter:brightness(1.12);transform:translateY(-1px)}.login-submit:focus-visible{outline:2px solid var(--login-focus);outline-offset:3px}.login-submit:disabled{opacity:.6;cursor:progress;transform:none}.login-forgot{margin-top:max(22px, calc(35 * var(--login-s)));text-align:center}.login-forgot a{color:#d3d7dd;font-size:max(14px, calc(16 * var(--login-s)));text-underline-offset:5px;border-radius:4px;-webkit-text-decoration:underline #d3d7dd8c;text-decoration:underline #d3d7dd8c}.login-forgot a:hover{color:#fff;text-decoration-color:#fff}.login-forgot a:focus-visible{outline:2px solid var(--login-focus);outline-offset:4px;color:#fff}.login-panel .alert-error{margin:0 0 max(16px, calc(22 * var(--login-s)));color:#ffd0d0;background:#d645452e;border:1px solid #ff969673}@media (width<=900px),(aspect-ratio<=1){.login-page{background-position:30%;flex-direction:column;justify-content:center;align-items:center;gap:22px;padding:32px 16px;display:flex}.login-brand,.login-panel{position:static;transform:none}.login-brand-logo{width:150px;margin-bottom:-10px}.login-brand-name{font-size:28px}.login-brand-sub{margin-top:8px;font-size:13px}.login-panel{width:min(440px,100%);padding:32px 22px 28px}}.kv-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px 24px;display:grid}.kv-item .kv-label{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.02em;font-size:12px}.kv-item .kv-value{margin-top:2px;font-size:14px}.metric-grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:14px;margin-bottom:20px;display:grid}.metric-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;padding:16px}.metric-card .metric-value{font-size:28px;font-weight:700}.metric-card .metric-label{color:var(--color-text-muted);margin-top:4px;font-size:12.5px}.empty-state{text-align:center;color:var(--color-text-muted);padding:40px 0}.pagination{color:var(--color-text-muted);align-items:center;gap:10px;margin-top:14px;font-size:13px;display:flex}.lock-banner{align-items:center;gap:8px;display:flex}.page-description{color:var(--color-text-muted);max-width:760px;margin:-12px 0 18px;font-size:13px}.filter-bar{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:16px;display:flex}.search-input{border:1px solid var(--color-border);background:var(--color-surface);border-radius:6px;padding:8px 12px}.filter-bar .search-input{flex:260px;min-width:200px}.filter-pills{background:var(--color-bg);border:1px solid var(--color-border);border-radius:999px;gap:4px;padding:3px;display:flex}.filter-pill{color:var(--color-text-muted);background:0 0;border:none;border-radius:999px;padding:6px 14px;font-size:12.5px;font-weight:500}.filter-pill.active{background:var(--color-surface);color:var(--color-text);box-shadow:0 1px 2px #0f172a14}.admin-table-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:10px;overflow:hidden}.admin-table-card table{font-size:13.5px}.row-actions{justify-content:flex-end;gap:6px;display:flex}.btn-sm{border-radius:5px;padding:5px 10px;font-size:12.5px}.modal-overlay{z-index:100;background:#0f172a73;justify-content:center;align-items:flex-start;padding:40px 16px;display:flex;position:fixed;inset:0;overflow-y:auto}.modal-panel{background:var(--color-surface);border-radius:12px;flex-direction:column;width:100%;max-width:640px;max-height:calc(100vh - 80px);display:flex;box-shadow:0 20px 50px #0f172a40}.modal-header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:flex-start;gap:12px;padding:20px 24px;display:flex}.modal-header h3{margin:0}.modal-header p{color:var(--color-text-muted);margin:4px 0 0;font-size:12.5px}.modal-close{color:var(--color-text-muted);background:0 0;border:none;padding:4px;font-size:18px;line-height:1}.modal-body{padding:20px 24px;overflow-y:auto}.modal-footer{border-top:1px solid var(--color-border);justify-content:flex-end;gap:10px;padding:16px 24px;display:flex}.form-section{margin-bottom:22px}.form-section:last-child{margin-bottom:0}.form-section-title{text-transform:uppercase;letter-spacing:.03em;color:var(--color-text-muted);border-bottom:1px solid var(--color-border);margin-bottom:12px;padding-bottom:6px;font-size:12.5px;font-weight:700}.form-row{grid-template-columns:1fr 1fr;gap:0 14px;display:grid}@media (width<=520px){.form-row{grid-template-columns:1fr}}.switch-row{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:12px;padding:10px 0;display:flex}.switch-row:last-child{border-bottom:none}.switch-row-label{font-size:13.5px}.switch-row-hint{color:var(--color-text-muted);margin-top:2px;font-size:12px}.switch{flex-shrink:0;width:38px;height:22px;display:inline-block;position:relative}.switch input{opacity:0;width:0;height:0}.switch-track{cursor:pointer;background:#cbd5e1;border-radius:999px;transition:background .15s;position:absolute;inset:0}.switch-track:before{content:"";background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .15s;position:absolute;top:3px;left:3px}.switch input:checked+.switch-track{background:var(--color-primary)}.switch input:checked+.switch-track:before{transform:translate(16px)}.switch input:disabled+.switch-track{opacity:.5;cursor:not-allowed}.type-toggle{gap:8px;margin-bottom:18px;display:flex}.type-toggle button{border:1px solid var(--color-border);background:var(--color-surface);text-align:left;border-radius:8px;flex:1;padding:10px 14px;font-size:13px;font-weight:500}.type-toggle button.active{border-color:var(--color-primary);color:var(--color-primary);background:#eff6ff}.logo-uploader{align-items:center;gap:14px;display:flex}.logo-preview{border:1px solid var(--color-border);background:var(--color-bg);width:64px;height:64px;color:var(--color-text-muted);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:11px;display:flex;overflow:hidden}.logo-preview img{object-fit:cover;width:100%;height:100%}.section-hint{color:var(--color-text-muted);margin:-8px 0 12px;font-size:12px}.detail-chips{flex-wrap:wrap;gap:6px;display:flex}.detail-chip{background:var(--color-bg);border:1px solid var(--color-border);border-radius:999px;align-items:center;gap:6px;padding:4px 10px 4px 12px;font-size:12.5px;display:inline-flex}.detail-chip-add{gap:8px;display:flex}.detail-chip-add input{flex:1}.detail-row-clickable{cursor:pointer}.detail-record-link{color:var(--color-text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:3px;padding:0;font-weight:600}.detail-record-link:hover{text-underline-offset:3px;text-decoration:underline}.detail-record-link:focus-visible{outline:2px solid var(--shell-charcoal);outline-offset:2px}.detail-drawer-backdrop{z-index:60;background:#11121447;justify-content:flex-end;display:flex;position:fixed;inset:0}.detail-drawer{background:var(--color-surface);border-left:1px solid var(--shell-border);width:min(580px,100vw);height:100%;box-shadow:var(--shell-shadow-overlay);color:var(--shell-text);flex-direction:column;display:flex}.detail-drawer-header{border-bottom:1px solid var(--shell-border);flex:none;padding:20px 24px 18px}.detail-drawer-header-top{justify-content:space-between;align-items:center;gap:12px;display:flex}.detail-drawer-header h3{letter-spacing:.04em;text-transform:uppercase;color:var(--shell-text-secondary);margin:0;font-size:13px;font-weight:600}.detail-drawer-name{overflow-wrap:anywhere;align-items:center;gap:12px;margin-top:10px;font-size:22px;font-weight:700;line-height:30px;display:flex}.detail-drawer-badges{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.detail-drawer-meta{color:var(--shell-text-secondary);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;margin-top:8px;font-size:13.5px}.detail-drawer-body{flex:auto;padding:8px 24px 24px;overflow-y:auto}.detail-drawer-loading{text-align:center;color:var(--shell-text-secondary);padding:32px 0}.detail-section{border-bottom:1px solid var(--shell-border);padding:18px 0}.detail-section:last-child{border-bottom:none}.detail-section h4{margin:0 0 12px;font-size:15px;font-weight:700}.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 20px;margin:0;display:grid}.detail-field dt{color:var(--shell-text-secondary);font-size:12.5px;font-weight:600}.detail-field dd{overflow-wrap:anywhere;white-space:pre-wrap;margin:3px 0 0;font-size:14px}.detail-list{margin:0;padding:0;list-style:none}.detail-list li+li{margin-top:3px}.detail-empty{color:var(--shell-text-secondary)}.detail-card-list{flex-direction:column;gap:10px;display:flex}.detail-card{border:1px solid var(--shell-border);background:var(--shell-main-bg);border-radius:8px;padding:14px 16px}.detail-card-top{justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px;display:flex}.detail-card-text{overflow-wrap:anywhere;white-space:pre-wrap;margin-top:10px;font-size:14px}.detail-chip-list{flex-wrap:wrap;gap:6px;display:flex}.detail-drawer-footer{border-top:1px solid var(--shell-border);flex:none;justify-content:flex-end;gap:8px;padding:14px 24px;display:flex}@media (width<=520px){.detail-grid{grid-template-columns:minmax(0,1fr)}.detail-drawer-header,.detail-drawer-body,.detail-drawer-footer{padding-left:16px;padding-right:16px}}.case-list-filters{border:1px solid var(--color-border);background:var(--color-surface);border-radius:10px;margin-bottom:16px;padding:16px 18px}.case-list-filter-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px 14px;display:grid}.case-list-filter-field{flex-direction:column;gap:4px;min-width:0;display:flex}.case-list-filter-field.is-wide{grid-column:span 2}@media (width<=520px){.case-list-filter-field.is-wide{grid-column:auto}}.case-list-filter-field>span,.case-list-date-group legend{color:var(--color-text-muted);font-size:12px;font-weight:600}.case-list-filters input,.case-list-filters select{border:1px solid var(--color-border);background:var(--color-surface);width:100%;height:38px;color:var(--color-text);font:inherit;border-radius:6px;padding:0 10px;font-size:13.5px}.case-list-filters input:focus,.case-list-filters select:focus{border-color:var(--shell-charcoal);outline:none;box-shadow:0 0 0 3px #191b1f1a}.case-list-date-row{border-top:1px solid var(--color-border);flex-wrap:wrap;align-items:flex-end;gap:14px 28px;margin-top:14px;padding-top:14px;display:flex}.case-list-date-group{border:none;min-width:0;margin:0;padding:0}.case-list-date-group legend{margin-bottom:4px;padding:0}.case-list-date-inputs{align-items:center;gap:8px;display:flex}.case-list-date-inputs input{width:150px}.case-list-date-arrow{color:var(--color-text-muted)}.case-list-clear{background:0 0;height:38px;margin-left:auto}.case-list-clear:hover{background:var(--color-bg)}.case-list-table-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:10px;transition:opacity .15s;overflow-x:auto}.case-list-table-card.is-refreshing{opacity:.55}.case-list-table th,.case-list-table td{padding:11px 12px}.case-list-row{cursor:pointer}.case-list-link{color:var(--color-text);font-variant-numeric:tabular-nums;border-radius:3px;font-weight:700;text-decoration:none}.case-list-link:hover{text-underline-offset:3px;text-decoration:underline}.case-list-link:focus-visible{outline:2px solid var(--shell-charcoal);outline-offset:2px}.case-list-date-cell{font-variant-numeric:tabular-nums}.case-list-empty{border:1px dashed var(--color-border);background:var(--color-surface);color:var(--color-text-muted);text-align:center;border-radius:10px;padding:40px 16px}@media (width<=700px){.case-list-date-inputs input{flex:1 1 0;width:auto;min-width:0}.case-list-date-group{flex:100%}.case-list-clear{margin-left:0}}.rte{border:1px solid var(--color-border);background:var(--color-surface);border-radius:8px;overflow:hidden}.rte-toolbar{border-bottom:1px solid var(--color-border);background:var(--color-bg);gap:2px;padding:6px;display:flex}.rte-toolbar button{background:0 0;border:1px solid #0000;border-radius:6px;min-width:30px;padding:4px 8px}.rte-toolbar button:hover:not(:disabled){border-color:var(--color-border);background:var(--color-surface)}.rte-toolbar button:disabled{opacity:.4;cursor:not-allowed}.rte-content{outline:none;min-height:90px;padding:10px 12px;font-size:13.5px;line-height:1.5}.rte-content ul,.rte-content ol{margin:0;padding-left:22px}.rte-content:empty:before{content:attr(data-placeholder);color:var(--color-text-muted)}.rte-disabled .rte-content{background:var(--color-bg);color:var(--color-text-muted)}.phase-stepper{align-items:flex-start;gap:2px;max-width:900px;margin:18px 0 22px;padding-bottom:4px;display:flex;overflow-x:auto}.phase-step{background:0 0;border:none;border-radius:8px;flex-direction:column;flex:1;align-items:center;gap:6px;min-width:84px;padding:6px 2px;display:flex}.phase-step-dot{border:2px solid var(--color-border);background:var(--color-surface);width:30px;height:30px;color:var(--color-text-muted);border-radius:50%;justify-content:center;align-items:center;font-size:12.5px;font-weight:600;display:flex}.phase-step-label{text-align:center;color:var(--color-text-muted);font-size:11.5px;line-height:1.25}.phase-step.done .phase-step-dot{border-color:var(--color-success);background:var(--color-success);color:#fff}.phase-step.done .phase-step-label{color:var(--color-text)}.phase-step.active .phase-step-dot{color:#fff;background:#1d4ed8;border-color:#1d4ed8;box-shadow:0 0 0 3px #dbe5fb}.phase-step.active .phase-step-label{color:#1d4ed8;font-weight:600}.phase-step.clickable{cursor:pointer}.phase-step.clickable:hover{background:var(--color-bg)}.phase-step.clickable:focus-visible{outline-offset:1px;outline:2px solid #1d4ed8}.phase-step.locked{cursor:not-allowed}.phase-step.locked .phase-step-dot{border-style:dashed}.case-phase-workspace{max-width:880px}.case-phase-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:10px;margin-bottom:16px;padding:24px 28px}.case-phase-card-title{margin:0 0 4px;font-size:16px;font-weight:600}.case-phase-card-intro{color:var(--color-text-muted);margin:0 0 18px;font-size:13px}.case-phase-section+.case-phase-section{border-top:1px solid var(--color-border);margin-top:22px;padding-top:22px}.case-phase-section-title{color:var(--color-text);margin:0 0 4px;font-size:14px;font-weight:600}.case-phase-section-hint{color:var(--color-text-muted);margin:0 0 14px;font-size:12.5px}.case-phase-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px;display:grid}.case-phase-grid>.is-full{grid-column:1/-1}.case-phase-card .field{margin-bottom:16px}.case-phase-card .field label,.case-phase-card .choice-cards legend{color:var(--color-text);font-size:13px;font-weight:600}.case-phase-card .field input:not([type=checkbox]):not([type=radio]),.case-phase-card .field select{border-radius:8px;height:40px;padding:0 12px}.case-phase-hint{color:var(--color-text-muted);font-size:12px}.case-phase-static-label{color:var(--color-text);font-size:13px;font-weight:600}.case-phase-static{border:1px solid var(--color-border);background:var(--color-bg);min-height:40px;color:var(--color-text);border-radius:8px;align-items:center;gap:6px;padding:0 12px;font-size:14px;display:flex}.case-phase-inline-action{align-items:flex-end;margin-bottom:16px;display:flex}.case-phase-actions .case-phase-hint{align-self:center}.case-phase-card .rte-content{min-height:120px}.case-phase-card .rte:focus-within{border-color:#1d4ed8}.case-phase-card .btn,.case-confirm-dialog .btn{border-radius:8px;justify-content:center;min-height:40px;padding:0 18px}.case-phase-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:4px;display:flex}.case-phase-final-action{border-top:1px solid var(--color-border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:24px;padding-top:20px;display:flex}.case-phase-final-action p{color:var(--color-text-muted);max-width:520px;margin:0;font-size:12.5px}.case-phase-note{color:var(--color-text-muted);margin:8px 0 0;font-size:12.5px}.case-phase-checklist{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:28px;margin-bottom:18px;display:grid}.case-phase-checklist .switch-row,.case-phase-checklist .switch-row:last-child{border-bottom:1px solid var(--color-border);min-height:48px;padding:8px 0}.money-input{position:relative}.case-phase-card .field .money-input input:not([type=checkbox]){text-align:right;font-variant-numeric:tabular-nums;padding:0 34px 0 12px}.money-input-unit{color:var(--color-text-muted);pointer-events:none;font-size:13.5px;font-weight:600;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.case-phase-amount{font-variant-numeric:tabular-nums;font-weight:600}.choice-cards{border:none;min-width:0;margin:0 0 16px;padding:0}.choice-cards legend{margin-bottom:8px;padding:0}.choice-cards-grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px;display:grid}.choice-card{border:1px solid var(--color-border);background:var(--color-surface);cursor:pointer;border-radius:8px;flex-direction:column;gap:2px;padding:12px 14px 12px 40px;transition:border-color .15s,background .15s;display:flex;position:relative}.choice-card input{accent-color:#1d4ed8;width:16px;height:16px;margin:0;position:absolute;top:14px;left:14px}.choice-card:hover{border-color:#9fb3d9}.choice-card.is-selected{background:#eef3fd;border-color:#1d4ed8;box-shadow:0 0 0 1px #1d4ed8}.choice-card:focus-within{outline-offset:2px;outline:2px solid #1d4ed8}.choice-card-label{color:var(--color-text);font-size:14px;font-weight:600}.choice-card-hint{color:var(--color-text-muted);font-size:12px}.choice-cards:disabled .choice-card{cursor:not-allowed;background:var(--color-bg)}.choice-cards:disabled .choice-card.is-selected{background:#eef3fd}.case-summary-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px;margin:0;display:grid}.case-summary-item{border-bottom:1px solid var(--color-border);flex-direction:column;gap:2px;min-width:0;padding:9px 0;display:flex}.case-summary-item.is-full{grid-column:1/-1}.case-summary-item dt{color:var(--color-text-muted);font-size:12px}.case-summary-item dd{color:var(--color-text);overflow-wrap:anywhere;margin:0;font-size:14px;font-weight:500}.case-chip-list{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.case-chip{background:var(--color-warning-bg);color:var(--color-warning);border:1px solid #f3d9a4;border-radius:999px;align-items:center;padding:3px 10px;font-size:12.5px;font-weight:500;display:inline-flex}.case-confirm-dialog{max-width:720px}.case-confirm-section+.case-confirm-section{margin-top:18px}.case-confirm-section-title{letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-muted);margin:0 0 6px;font-size:12px;font-weight:600}.case-confirm-ack{border:1px solid var(--color-border);background:var(--color-bg);cursor:pointer;border-radius:8px;align-items:flex-start;gap:10px;padding:12px 14px;font-size:13.5px;font-weight:500;display:flex}.case-confirm-ack input{flex-shrink:0;width:16px;height:16px;margin-top:2px}.case-confirm-warning{background:var(--color-danger-bg);color:var(--color-danger);border-radius:8px;margin:16px 0 0;padding:12px 14px;font-size:13.5px;line-height:1.5}.case-closed-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}@media (width<=720px){.case-phase-card{padding:18px 16px}.case-phase-grid,.case-phase-checklist,.case-summary-list{grid-template-columns:minmax(0,1fr)}}.user-permission-layout{grid-template-columns:1.1fr 1.4fr;align-items:start;gap:20px;display:grid}@media (width<=900px){.user-permission-layout{grid-template-columns:1fr}}.user-permission-layout tbody tr{cursor:pointer}.row-selected{background:#eff6ff}.user-detail-card{position:sticky;top:0}.user-detail-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.permission-summary-grid{border-top:1px solid var(--color-border);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin:18px 0;padding-top:16px;display:grid}.permission-chip-section .detail-chip{padding-right:6px}.permission-chip-role{background:var(--color-bg);color:var(--color-text-muted)}.permission-chip-extra{background:var(--color-success-bg);color:var(--color-success);border-color:#bbf7d0}.permission-chip-removed{background:var(--color-danger-bg);color:var(--color-danger);border-color:#fecaca}.chip-remove{color:inherit;opacity:.75;background:0 0;border:none;padding:0;font-size:13px;line-height:1}.chip-remove:hover{opacity:1}.permission-category-list{border:1px solid var(--color-border);border-radius:10px;overflow:hidden}.permission-category+.permission-category{border-top:1px solid var(--color-border)}.permission-category-header{background:var(--color-bg);text-align:left;border:none;justify-content:space-between;align-items:center;gap:10px;width:100%;padding:10px 14px;font-size:13px;font-weight:600;display:flex}.permission-category-body{padding:4px 14px 8px}.permission-row{border-bottom:1px solid var(--color-border);grid-template-columns:1.4fr 1.3fr auto;align-items:center;gap:10px;padding:10px 0;display:grid}.permission-row:last-child{border-bottom:none}@media (width<=700px){.permission-row{grid-template-columns:1fr}}.permission-row-label{font-size:13.5px;font-weight:500}.permission-row-code{color:var(--color-text-muted);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px}.permission-row-status{flex-direction:column;gap:3px;font-size:12px;display:flex}.permission-row-actions{justify-content:flex-end;gap:6px;display:flex}.dashboard-welcome{background:var(--color-surface);border:1px solid var(--color-border);border-radius:11px;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;padding:12px 20px;display:flex;position:relative;overflow:hidden}.dashboard-welcome:after{content:"";opacity:.04;pointer-events:none;background:url(/ryp-logo.jpg) 50%/contain no-repeat;width:140px;height:140px;position:absolute;top:-26px;right:-26px}.dashboard-welcome h2{margin:0 0 3px;font-size:18px;font-weight:700;line-height:26px}.dashboard-welcome p{color:var(--color-text-muted);margin:0;font-size:13px;line-height:18px}.dashboard-welcome-date{text-align:right;color:var(--color-text);white-space:nowrap;border:1px solid var(--color-border);background:var(--color-bg);border-radius:999px;padding:7px 14px;font-size:12.5px;font-weight:600}.dashboard-welcome-date .temp{color:var(--color-text);font-size:20px;font-weight:700}.kpi-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px;margin-bottom:16px;display:grid}.kpi-grid.compact{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));margin-bottom:24px}.kpi-card{background:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--shell-shadow-subtle);text-align:left;cursor:default;border-radius:11px;align-items:center;gap:18px;padding:24px;transition:box-shadow .15s,transform .15s;display:flex}button.kpi-card{width:100%;font-family:inherit}a.kpi-card{text-decoration:none}.kpi-card.clickable{cursor:pointer}.kpi-card.clickable:hover{box-shadow:var(--shell-shadow-card);border-color:var(--shell-border-strong);transform:translateY(-1px)}.kpi-grid.compact .kpi-card{padding:20px}.kpi-icon{border-radius:8px;flex:none;justify-content:center;align-items:center;width:56px;height:56px;display:flex}.kpi-icon svg{width:24px;height:24px}.kpi-grid.compact .kpi-icon{border-radius:8px;width:44px;height:44px}.kpi-grid.compact .kpi-icon svg{width:19px;height:19px}.kpi-icon.tone-neutral{background:var(--color-info-bg);color:var(--color-info)}.kpi-icon.tone-primary{background:var(--shell-surface-soft);color:var(--shell-charcoal)}.kpi-icon.tone-danger{background:var(--color-danger-bg);color:var(--color-danger)}.kpi-icon.tone-warning{background:var(--color-warning-bg);color:var(--color-warning)}.kpi-icon.tone-success{background:var(--color-success-bg);color:var(--color-success)}.kpi-icon.tone-blue{background:var(--dashboard-blue-soft);color:var(--dashboard-blue)}.kpi-icon.tone-violet{background:var(--dashboard-violet-soft);color:var(--dashboard-violet)}.kpi-icon.tone-rose{background:var(--dashboard-rose-soft);color:var(--dashboard-rose)}.kpi-icon.tone-teal{background:var(--dashboard-teal-soft);color:var(--dashboard-teal)}.kpi-body{flex:auto;min-width:0}.kpi-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.kpi-label{color:var(--color-text-muted);letter-spacing:.01em;text-transform:uppercase;font-size:13px;font-weight:600;line-height:18px}.kpi-trend{white-space:nowrap;font-size:11px;font-weight:700}.kpi-trend.up{color:var(--color-success)}.kpi-trend.down{color:var(--color-danger)}.kpi-value{color:var(--color-text);letter-spacing:-.01em;margin-top:6px;font-size:38px;font-weight:700;line-height:42px;display:block}.kpi-grid.compact .kpi-value{font-size:28px;line-height:34px}.dashboard-grid{grid-template-columns:1.1fr 1fr;gap:16px;margin-bottom:16px;display:grid}.dashboard-grid.thirds{grid-template-columns:repeat(3,1fr)}@media (width<=1100px){.dashboard-grid,.dashboard-grid.thirds{grid-template-columns:1fr}}.dashboard-card{background:var(--color-surface);border:1px solid var(--color-border);min-width:0;box-shadow:var(--shell-shadow-subtle);border-radius:11px;padding:24px}.dashboard-card-header{justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:18px;display:flex}.dashboard-card-header h3{margin:0 0 3px;font-size:18px;font-weight:700;line-height:26px}.dashboard-card-header p{color:var(--color-text-muted);margin:0;font-size:13px;line-height:18px}.status-distribution-body{flex-wrap:wrap;align-items:center;gap:32px;display:flex}.status-donut{flex:none}.status-legend{flex:260px;min-width:220px;margin:0;padding:0;list-style:none}.status-legend li{cursor:default;border-radius:8px;align-items:center;gap:10px;padding:9px 7px;font-size:14px;display:flex}.status-legend li.clickable{cursor:pointer}.status-legend li.clickable:hover{background:var(--color-bg)}.status-legend .dot{border-radius:50%;flex:none;width:10px;height:10px}.status-legend .name{color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;flex:auto;overflow:hidden}.status-legend .count{color:var(--color-text);font-weight:700}.status-legend .pct{color:var(--color-text-muted);text-align:right;min-width:38px;font-size:12px}.overdue-table-wrap{overflow-x:auto}.overdue-table{border-collapse:collapse;width:100%;font-size:13.5px}.overdue-table th{text-align:left;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.03em;background:var(--color-bg);border-bottom:1px solid var(--color-border);padding:11px 12px;font-size:12px;font-weight:600}.overdue-table th:first-child{border-radius:6px 0 0}.overdue-table th:last-child{border-radius:0 6px 0 0}.overdue-table td{border-bottom:1px solid var(--color-border);padding:13px 12px}.overdue-table tr:last-child td{border-bottom:none}.overdue-table tr.clickable{cursor:pointer}.overdue-table tr.clickable:hover{background:var(--color-bg)}.delay-pill{border-radius:999px;align-items:center;gap:5px;padding:4px 11px;font-size:12px;font-weight:700;display:inline-flex}.delay-pill.mild{background:var(--color-warning-bg);color:var(--color-warning)}.delay-pill.severe{background:var(--color-danger-bg);color:var(--color-danger)}.activity-list{margin:0;padding:0;list-style:none}.activity-list li{border-bottom:1px solid var(--color-border);gap:11px;padding:11px 0;display:flex}.activity-list li:last-child{border-bottom:none}.activity-dot{background:var(--dashboard-blue);border-radius:50%;flex:none;width:8px;height:8px;margin-top:7px}.activity-body{flex:auto;min-width:0}.activity-desc{color:var(--color-text);font-size:13.5px;font-weight:500}.activity-meta{color:var(--color-text-muted);margin-top:3px;font-size:11.5px}.distribution-list{margin:0;padding:0;list-style:none}.distribution-row{padding:9px 0}.distribution-row-top{justify-content:space-between;margin-bottom:6px;font-size:13px;display:flex}.distribution-row-top .name{color:var(--color-text);font-weight:600}.distribution-row-top .count{color:var(--color-text-muted);font-weight:500}.distribution-bar-track{background:var(--color-bg);border-radius:999px;height:8px;overflow:hidden}.distribution-bar-fill{background:var(--dashboard-blue);border-radius:999px;height:100%}.distribution-list.tone-teal .distribution-bar-fill{background:var(--dashboard-teal)}.distribution-row-button{width:100%;font:inherit;text-align:left;color:inherit;cursor:pointer;background:0 0;border:none;border-radius:8px;margin:-6px 0;padding:6px 8px;transition:background .15s;display:block}.distribution-row-button:hover{background:var(--color-bg)}.distribution-row-button:focus-visible{outline:2px solid var(--dashboard-blue);outline-offset:1px}.distribution-row-button .distribution-bar-track,.distribution-row-button .distribution-bar-fill{display:block}.finance-widget-card{border:1px dashed var(--shell-platinum-dark)}.finance-widget-badge{text-transform:uppercase;letter-spacing:.05em;color:var(--shell-platinum-dark);font-size:11px;font-weight:700}.service-logo-thumb{border:1px solid var(--color-border);background:var(--color-bg);border-radius:8px;flex:none;justify-content:center;align-items:center;width:40px;height:40px;display:flex;overflow:hidden}.service-logo-thumb img{object-fit:cover;width:100%;height:100%}.service-logo-thumb-placeholder{color:var(--color-text-muted);display:flex}.case-phase-section-title+.case-phase-grid,.case-phase-section-title+.alert{margin-top:12px}@media (width<=768px){.phone-input input,.case-phase-card .field input,.case-phase-card .field select,.case-list-filters input,.case-list-filters select,.modal-panel .field input,.modal-panel .field select,.modal-panel .field textarea{font-size:16px}}
