@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500;600;700;800&display=swap");@import url("https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..24,400,0,0&display=swap");:root{--primary:#1a6b8a;--primary-dark:#125270;--primary-light:#e6f4f8;--primary-mid:#b3d9e8;--primary-glow:rgba(26,107,138,0.15);--accent:#e07b39;--accent-light:#fef3ea;--accent-glow:rgba(224,123,57,0.15);--danger:#dc3545;--danger-light:#fff0f0;--success:#28a745;--success-light:#efffef;--warning:#e6a817;--warning-light:#fffbef;--purple:#6f42c1;--purple-light:#f3efff;--teal:#20c997;--teal-light:#eafff8;--gray-50:#f8f9fb;--gray-100:#f0f2f5;--gray-200:#e2e6ea;--gray-300:#ced4da;--gray-400:#adb5bd;--gray-500:#6c757d;--gray-600:#495057;--gray-700:#343a40;--gray-800:#212529;--gray-900:#121418;--white:#ffffff;--sidebar-width:260px;--sidebar-collapsed:62px;--header-height:58px;--font:"Noto Sans JP",sans-serif;--shadow-xs:0 1px 2px rgba(0,0,0,0.04);--shadow-sm:0 2px 8px rgba(0,0,0,0.06),0 1px 3px rgba(0,0,0,0.04);--shadow:0 4px 16px rgba(0,0,0,0.08),0 2px 6px rgba(0,0,0,0.05);--shadow-md:0 8px 28px rgba(0,0,0,0.1),0 4px 10px rgba(0,0,0,0.06);--shadow-lg:0 16px 48px rgba(0,0,0,0.14);--radius-xs:3px;--radius:8px;--radius-sm:5px;--radius-lg:12px;--radius-xl:16px;--transition:0.2s cubic-bezier(0.4,0,0.2,1);--transition-slow:0.35s cubic-bezier(0.4,0,0.2,1)}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{font-size:14px;scroll-behavior:smooth;height:100%}body,html{overscroll-behavior:none}body{font-family:var(--font);background:var(--gray-100);color:var(--gray-800);line-height:1.6;-webkit-font-smoothing:antialiased;min-height:100vh}a{color:var(--primary);transition:color var(--transition)}a,a:hover{text-decoration:none}a:hover{color:var(--primary-dark)}button{cursor:pointer;font-family:var(--font)}input,select,textarea{font-family:var(--font);font-size:13px}ol,ul{list-style:none}.material-symbols-outlined{font-family:Material Symbols Outlined;font-weight:400;font-style:normal;font-size:20px;line-height:1;letter-spacing:0;text-transform:none;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;word-wrap:normal;direction:ltr;-webkit-font-feature-settings:"liga";-webkit-font-smoothing:antialiased;font-feature-settings:"liga";font-variation-settings:"FILL" 0,"wght" 400,"GRAD" 0,"opsz" 20}.app-layout{height:100vh;background:var(--gray-100)}.app-layout,.sidebar{display:flex;overflow:hidden}.sidebar{width:var(--sidebar-width);min-width:var(--sidebar-width);min-height:100%;align-self:stretch;background:#0f2744;background:linear-gradient(180deg,#0d2240,#12305c 45%,#0f2a4e);flex-direction:column;transition:width var(--transition-slow),min-width var(--transition-slow);z-index:100;box-shadow:4px 0 20px rgba(0,0,0,.15);position:relative;flex-shrink:0}.sidebar.collapsed{width:var(--sidebar-collapsed);min-width:var(--sidebar-collapsed)}.sidebar-header{padding:0 16px;height:var(--header-height);border-bottom:1px solid rgba(255,255,255,.08);flex-shrink:0}.sidebar-header,.sidebar-logo{display:flex;align-items:center;gap:10px}.sidebar-logo{overflow:hidden;white-space:nowrap;flex:1 1}.sidebar-logo .logo-image{width:24px;height:24px;flex-shrink:0;object-fit:contain;filter:brightness(0) invert(1)}.sidebar-logo .logo-text{font-size:13px;font-weight:700;color:rgba(255,255,255,.95);line-height:1.3;opacity:1;transition:opacity var(--transition-slow);overflow:hidden}.sidebar-logo .logo-sub{font-size:10px;font-weight:400;color:rgba(255,255,255,.45)}.sidebar.collapsed .logo-text{opacity:0;width:0}.sidebar.collapsed .sidebar-logo{width:0;flex:0 1}.sidebar-toggle{flex-shrink:0;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);color:rgba(255,255,255,.7);width:30px;height:30px;border-radius:6px;display:flex;align-items:center;justify-content:center;transition:all var(--transition);cursor:pointer;font-size:16px;line-height:1}.sidebar-toggle:hover{background:rgba(255,255,255,.15);color:white}.sidebar-toggle .material-symbols-outlined{font-size:20px}.sidebar-nav{flex:1 1;overflow-y:auto;overflow-x:hidden;padding:6px 0;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.15) transparent}.sidebar-nav::-webkit-scrollbar{width:3px}.sidebar-nav::-webkit-scrollbar-track{background:transparent}.sidebar-nav::-webkit-scrollbar-thumb{background:rgba(255,255,255,.15);border-radius:3px}.nav-section{margin-bottom:2px}.nav-section-title{font-size:10px;font-weight:700;color:rgba(255,255,255,.35);text-transform:uppercase;letter-spacing:.1em;padding:6px 18px 2px;white-space:nowrap;overflow:hidden;transition:opacity var(--transition-slow)}.sidebar.collapsed .nav-section-title{opacity:0}.nav-item{display:flex;align-items:center;gap:10px;padding:7px 16px;color:rgba(255,255,255,.65);font-size:12.5px;font-weight:500;cursor:pointer;text-decoration:none;white-space:nowrap;overflow:hidden;transition:all var(--transition);border-left:3px solid transparent;margin:1px 8px;border-radius:7px;position:relative}.nav-item:hover{background:rgba(255,255,255,.08);color:white;text-decoration:none}.nav-item.active{background:rgba(33,150,243,.2);color:#60c8ff;font-weight:700;border-left-color:#60c8ff}.nav-item .nav-icon{width:22px;height:22px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:15px}.nav-item .material-symbols-outlined.nav-icon{font-size:20px}.nav-item .nav-label{opacity:1;transition:opacity var(--transition-slow);overflow:hidden;text-overflow:ellipsis;flex:1 1}.sidebar.collapsed .nav-label{opacity:0}.nav-badge{margin-left:auto;background:#e53e3e;color:white;font-size:10px;font-weight:700;padding:1px 6px;border-radius:999px;flex-shrink:0;transition:opacity var(--transition-slow);animation:pulse-badge 2s ease-in-out infinite}@keyframes pulse-badge{0%,to{opacity:1}50%{opacity:.7}}.sidebar.collapsed .nav-badge{opacity:0}.sidebar.collapsed .nav-item[data-tooltip]:after{content:attr(data-tooltip);position:absolute;left:calc(100% + 10px);top:50%;transform:translateY(-50%);background:var(--gray-900);color:white;padding:5px 12px;border-radius:var(--radius-sm);font-size:12px;white-space:nowrap;pointer-events:none;z-index:999;box-shadow:var(--shadow-md);opacity:0;animation:fadeIn .15s ease .3s forwards}@keyframes fadeIn{to{opacity:1}}.sidebar-footer{padding:12px 10px;border-top:1px solid rgba(255,255,255,.08);flex-shrink:0}.sidebar-footer .nav-item{color:rgba(255,255,255,.5);font-size:12px}.main-content{flex:1 1;display:flex;flex-direction:column;overflow:hidden;min-width:0}.top-header{height:var(--header-height);background:var(--white);border-bottom:1px solid var(--gray-200);display:flex;align-items:center;padding:0 24px;gap:14px;flex-shrink:0;z-index:99;box-shadow:0 1px 4px rgba(0,0,0,.05)}.page-title{font-size:16px;font-weight:800;color:var(--gray-800);margin-right:8px}.breadcrumb{font-size:12px;color:var(--gray-400);display:flex;align-items:center;gap:5px;flex:1 1}.breadcrumb span{color:var(--gray-300)}.breadcrumb a{color:var(--gray-500)}.breadcrumb a:hover{color:var(--primary)}.header-actions{gap:10px;flex-shrink:0;margin-left:auto}.header-actions,.zoom-control{display:flex;align-items:center}.zoom-control{gap:4px;padding:0 8px;border-right:1px solid var(--gray-200);margin-right:4px}.role-selector{display:flex;align-items:center;gap:7px;background:var(--gray-100);padding:6px 12px;border-radius:999px;border:1px solid var(--gray-200)}.role-selector label{font-size:11px;color:var(--gray-500);font-weight:600;white-space:nowrap}.role-selector select{border:none;background:transparent;color:var(--gray-700);font-weight:700;font-size:12.5px;cursor:pointer;outline:none}.role-badge{padding:4px 12px;border-radius:999px;font-size:11px;font-weight:700;letter-spacing:.03em}.role-badge.assistant{background:var(--primary-light);color:var(--primary)}.role-badge.manager{background:linear-gradient(135deg,#fff3e6,#ffe8d0);color:var(--accent);border:1px solid #ffd4a8}.page-body{flex:1 1;overflow-y:auto;overflow-x:hidden;padding:20px 24px;display:flex;flex-direction:column;gap:16px}.page-body.no-padding{padding:0}.page-body::-webkit-scrollbar{width:7px;height:7px}.page-body::-webkit-scrollbar-track{background:transparent}.page-body::-webkit-scrollbar-thumb{background:var(--gray-300);border-radius:4px}.card{background:var(--white);border-radius:var(--radius-lg);border:1px solid var(--gray-200);box-shadow:var(--shadow-sm);overflow:hidden;transition:box-shadow var(--transition)}.card-header{padding:14px 18px;border-bottom:1px solid var(--gray-200);gap:10px;background:var(--white);flex-shrink:0}.card-header,.card-title{display:flex;align-items:center}.card-title{font-size:14px;font-weight:800;color:var(--gray-800);gap:7px}.card-actions{margin-left:auto;display:flex;gap:8px;align-items:center}.card-body{padding:16px 18px}.btn{display:inline-flex;align-items:center;gap:6px;padding:7px 16px;border-radius:var(--radius-sm);font-size:12.5px;font-weight:700;border:1.5px solid transparent;transition:all var(--transition);white-space:nowrap;line-height:1;cursor:pointer;letter-spacing:.02em}.btn:hover{text-decoration:none;transform:translateY(-1px);box-shadow:var(--shadow-sm)}.btn:active{transform:translateY(0)}.btn-sm{padding:5px 12px;font-size:11.5px;border-radius:var(--radius-xs)}.btn-lg{padding:10px 24px;font-size:14px;border-radius:var(--radius-sm)}.btn-primary{background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:white;border-color:var(--primary-dark);box-shadow:0 2px 6px var(--primary-glow)}.btn-primary:hover{background:linear-gradient(135deg,#2280a5,var(--primary));color:white}.app-auth-state{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:24px;color:var(--gray-700);background:var(--gray-50);font-size:13px;font-weight:700;text-align:center}.app-auth-error{color:#dc2626;font-size:12px;font-weight:600}.app-add-button{gap:6px}.btn-accent{background:linear-gradient(135deg,var(--accent),#c96a2a);color:white;border-color:#c96a2a;box-shadow:0 2px 6px var(--accent-glow)}.btn-outline{background:white;color:var(--gray-600);border-color:var(--gray-300)}.btn-outline:hover{background:var(--gray-50);border-color:var(--gray-400);color:var(--gray-800)}.btn-danger{background:linear-gradient(135deg,#e53e3e,#c53030);color:white;border-color:#c53030}.btn-success{background:linear-gradient(135deg,var(--success),#1e7e34);color:white;border-color:#1e7e34}.btn-ghost{background:transparent;color:var(--gray-600);border-color:transparent}.btn-ghost:hover{background:var(--gray-100);color:var(--gray-800);transform:none;box-shadow:none}.btn-icon{width:32px;height:32px;padding:0;justify-content:center;border-radius:var(--radius-sm)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.form-group{display:flex;flex-direction:column;gap:5px}.form-label{font-size:12px;font-weight:700;color:var(--gray-600);letter-spacing:.02em}.form-label .required{color:var(--danger);margin-left:3px}.form-control{padding:8px 12px;border:1.5px solid var(--gray-300);border-radius:var(--radius-sm);font-size:13px;color:var(--gray-800);background:white;transition:border-color var(--transition),box-shadow var(--transition);width:100%}.form-control:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-glow)}.form-control:-moz-read-only{background:var(--gray-50);color:var(--gray-500)}.form-control:read-only{background:var(--gray-50);color:var(--gray-500)}.form-row{display:flex;gap:14px}.form-row .form-group{flex:1 1}.table-wrapper{overflow:auto;position:relative;flex:1 1;-webkit-overflow-scrolling:touch}.table-wrapper::-webkit-scrollbar{width:8px;height:8px}.table-wrapper::-webkit-scrollbar-track{background:var(--gray-100)}.table-wrapper::-webkit-scrollbar-thumb{background:var(--gray-300);border-radius:4px}.table-wrapper::-webkit-scrollbar-corner{background:var(--gray-100)}.excel-table{width:100%;border-collapse:separate;border-spacing:0;font-size:12.5px;white-space:nowrap}.excel-table thead tr th{background:#1e3a5f;color:rgba(255,255,255,.92);font-weight:700;font-size:11.5px;padding:9px 12px;border:none;border-right:1px solid #162d4a;border-bottom:2px solid #162d4a;position:-webkit-sticky;position:sticky;top:0;z-index:10;text-align:left;cursor:default;-webkit-user-select:none;-moz-user-select:none;user-select:none;white-space:nowrap;letter-spacing:.02em;background-clip:padding-box}.excel-table.client-list-table thead tr th{border-left:1px solid rgba(255,255,255,.2);border-right:1px solid rgba(255,255,255,.2);border-bottom:none;background-clip:border-box}.excel-table thead tr th.sortable{cursor:pointer}.excel-table thead tr th.sortable:hover{background:#2d5282}.excel-table thead tr th .sort-icon{color:rgba(255,255,255,.45);font-size:10px;margin-left:3px}.excel-table thead tr th.num-col{background:#162d4a;width:44px;text-align:center;color:rgba(255,255,255,.55)}.excel-table tbody tr td{padding:4px 12px;border:1px solid #edf0f4;color:var(--gray-700);vertical-align:middle;transition:background var(--transition);background:white}.excel-table tbody tr:nth-child(2n) td{background:#f5f6f8}.excel-table tbody tr td.num-col{background:#f8f9fb;color:var(--gray-400);text-align:center;font-size:11px}.excel-table tbody tr:nth-child(2n) td.num-col{background:#eff1f4}.excel-table tbody tr:hover td{background:#f0f7ff}.excel-table tbody tr:hover td.num-col{background:#e8f3ff}.excel-table tbody tr.selected td{background:#dbeffe}.excel-table .sticky-col{position:-webkit-sticky;position:sticky;left:0;background:white;z-index:5;box-shadow:2px 0 6px rgba(0,0,0,.05);min-width:220px;max-width:220px;width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.excel-table thead th.sticky-col{background:#1e3a5f;z-index:15}.excel-table tbody tr:hover td.sticky-col{background:#f0f7ff}.excel-table tbody tr.selected td.sticky-col{background:#dbeffe}.activities-table .activity-client-link{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.client-no-link{cursor:pointer;font-weight:700;color:var(--primary);text-decoration:none;transition:all var(--transition);display:inline-flex;align-items:center;gap:3px}.client-no-link:hover{color:var(--primary-dark);text-decoration:underline}.client-table-cell{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.badge{display:inline-block;padding:3px 9px;border-radius:999px;font-size:11px;font-weight:700;white-space:nowrap;letter-spacing:.03em}.badge-green{background:#ecfdf5;color:#059669;border:1px solid #a7f3d0}.badge-blue{background:#eff6ff;color:#2563eb;border:1px solid #bfdbfe}.badge-orange{background:#fff7ed;color:#ea580c;border:1px solid #fed7aa}.badge-red{background:#fef2f2;color:#dc2626;border:1px solid #fecaca}.badge-gray{background:#f9fafb;color:#6b7280;border:1px solid #e5e7eb}.badge-teal{background:#f0fdfa;color:#0d9488;border:1px solid #99f6e4}.badge-yellow{background:#fefce8;color:#ca8a04;border:1px solid #fde68a}.badge-purple{background:#faf5ff;color:#7c3aed;border:1px solid #ddd6fe}.table-toolbar{display:flex;align-items:center;gap:8px;padding:11px 16px;border-bottom:1px solid var(--gray-200);flex-wrap:wrap;background:var(--white)}.table-toolbar .search-box{position:relative;flex:1 1;min-width:180px;max-width:280px}.table-toolbar .search-box input{padding:0 10px 0 32px;height:34px;border:1.5px solid var(--gray-300);border-radius:var(--radius-sm);width:100%;font-size:12.5px;transition:border-color var(--transition),box-shadow var(--transition)}.table-toolbar .search-box input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-glow)}.table-toolbar .search-box .search-icon{position:absolute;left:9px;top:50%;transform:translateY(-50%);color:var(--gray-400);font-size:13px}.table-toolbar .filter-select{height:34px;padding:0 10px;border:1.5px solid var(--gray-300);border-radius:var(--radius-sm);font-size:12.5px;background:white;color:var(--gray-700);min-width:100px;transition:border-color var(--transition)}.table-toolbar .filter-select:focus{outline:none;border-color:var(--primary)}.table-info{font-size:12px;color:var(--gray-400);font-weight:500}.toolbar-spacer{flex:1 1}.modal-overlay{position:fixed;inset:0;background:rgba(10,20,40,.45);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;animation:overlayIn .18s ease}@keyframes overlayIn{0%{opacity:0}to{opacity:1}}.modal{background:white;border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);max-width:680px;width:100%;max-height:92vh;display:flex;flex-direction:column;animation:modalIn .22s cubic-bezier(.34,1.56,.64,1)}@keyframes modalIn{0%{transform:scale(.9) translateY(20px);opacity:0}to{transform:scale(1) translateY(0);opacity:1}}.modal-lg{max-width:860px}.modal-sm{max-width:460px}.modal-xl{max-width:1100px}.modal-header{display:flex;align-items:center;padding:18px 22px;border-bottom:1px solid var(--gray-200);background:linear-gradient(135deg,var(--gray-50),white);border-radius:var(--radius-xl) var(--radius-xl) 0 0}.modal-title{font-size:15px;font-weight:800;color:var(--gray-800)}.modal-close{margin-left:auto;background:none;border:none;color:var(--gray-400);font-size:20px;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all var(--transition)}.modal-close:hover{background:var(--gray-100);color:var(--gray-700)}.modal-body{padding:22px;overflow-y:auto;flex:1 1}.modal-body::-webkit-scrollbar{width:5px}.modal-body::-webkit-scrollbar-thumb{background:var(--gray-300);border-radius:3px}.modal-footer{padding:16px 22px;border-top:1px solid var(--gray-200);justify-content:flex-end;gap:10px;border-radius:0 0 var(--radius-xl) var(--radius-xl)}.modal-footer,.tabs{display:flex;background:var(--gray-50)}.tabs{border-bottom:2px solid var(--gray-200)}.tab-item{padding:12px 20px;font-size:13px;font-weight:600;color:var(--gray-500);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-2px;transition:all var(--transition);white-space:nowrap;display:flex;align-items:center;gap:6px}.tab-item:hover{color:var(--gray-700);background:rgba(0,0,0,.03)}.tab-item.active{color:var(--primary);border-bottom-color:var(--primary);font-weight:800;background:white}.tab-count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;padding:1px 6px;border-radius:999px;font-size:10px;font-weight:700;background:rgba(0,0,0,.08);color:var(--gray-600)}.stats-row{display:flex;gap:14px;flex-wrap:wrap}.stat-card{background:white;border:1px solid var(--gray-200);border-radius:var(--radius-lg);padding:16px 20px;min-width:150px;flex:1 1;transition:all var(--transition);position:relative;overflow:hidden}.stat-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--gray-300)}.stat-card.primary:before{background:linear-gradient(90deg,var(--primary),#2196f3)}.stat-card.accent:before{background:linear-gradient(90deg,var(--accent),#f7a35c)}.stat-card.success:before{background:linear-gradient(90deg,var(--success),#48bb78)}.stat-card.danger:before{background:linear-gradient(90deg,var(--danger),#f56565)}.stat-card .stat-label{font-size:11px;color:var(--gray-500);font-weight:700;text-transform:uppercase;letter-spacing:.07em;margin-bottom:6px}.stat-card .stat-value{font-size:28px;font-weight:800;color:var(--gray-800);line-height:1}.stat-card.primary .stat-value{color:var(--primary)}.stat-card.accent .stat-value{color:var(--accent)}.stat-card.success .stat-value{color:var(--success)}.stat-card.danger .stat-value{color:var(--danger)}.stat-card .stat-sub{font-size:11.5px;color:var(--gray-400);margin-top:4px}.toast-container{position:fixed;top:18px;right:18px;z-index:2000;display:flex;flex-direction:column;gap:9px}.toast{padding:12px 18px;border-radius:var(--radius-lg);font-size:13px;font-weight:600;box-shadow:var(--shadow-md);animation:toastIn .3s cubic-bezier(.34,1.56,.64,1),toastOut .25s ease 2.8s forwards;display:flex;align-items:center;gap:10px;max-width:340px;border:1px solid rgba(255,255,255,.2)}.toast.success{background:linear-gradient(135deg,#047857,var(--success));color:white}.toast.error{background:linear-gradient(135deg,#b91c1c,var(--danger));color:white}.toast.warning{background:linear-gradient(135deg,#b45309,var(--warning));color:white}.toast span:first-child{font-size:16px}@keyframes toastIn{0%{transform:translateX(80px) scale(.95);opacity:0}to{transform:translateX(0) scale(1);opacity:1}}@keyframes toastOut{to{opacity:0;transform:translateX(40px)}}.alert{border-radius:8px;font-size:12px;font-weight:700;margin-bottom:16px;padding:10px 12px}.alert-danger{background:var(--danger-light);border:1px solid #f5b5bd;color:var(--danger)}.alert-success{background:#ecfdf5;border:1px solid #a7f3d0;color:#047857}.workflow-page-body{padding:0;gap:0;display:flex;flex-direction:column;overflow:hidden}.fs-toolbar,.pw-toolbar{display:flex;align-items:center;gap:8px;padding:10px 16px;border-bottom:1px solid var(--gray-200);background:white;flex-wrap:wrap;flex-shrink:0}.fs-toolbar .search-box,.pw-toolbar .search-box{position:relative}.fs-toolbar .search-box input,.pw-toolbar .search-box input{padding:0 8px 0 30px;height:32px;border:1.5px solid var(--gray-300);border-radius:var(--radius-sm);font-size:12.5px;width:220px}.fs-toolbar .search-icon,.pw-toolbar .search-icon{position:absolute;left:8px;top:50%;transform:translateY(-50%);color:var(--gray-400)}.fs-toolbar select,.pw-toolbar select{height:32px;padding:0 8px;border:1.5px solid var(--gray-300);border-radius:var(--radius-sm);font-size:12.5px;background:white}.app-action-button{display:flex;align-items:center;gap:5px;padding:0 12px;height:32px;color:white;border:none;border-radius:8px;font-size:12px;font-weight:700;font-family:inherit;cursor:pointer;text-decoration:none;box-shadow:0 2px 10px rgba(30,58,95,.3)}.app-action-button-primary{background:linear-gradient(135deg,#1e3a5f,#2d5282)}.app-action-button-secondary{background:linear-gradient(135deg,#0e6b85,#0a4f63);box-shadow:0 2px 10px rgba(14,107,133,.35)}.app-action-button.app-action-button-large{height:auto;min-height:35px;padding:8px 18px;font-size:13px;gap:6px;white-space:nowrap}.app-action-button-primary:hover{color:white;background:#2d5282}.app-action-button-secondary:hover{color:white;filter:brightness(1.08)}.workflow-presence,.workflow-sync-status,.workflow-table-info{font-size:12px;color:var(--gray-500);display:flex;align-items:center;gap:6px}.workflow-sync-dot{width:8px;height:8px;border-radius:50%;background:#d1d5db;display:inline-block}.workflow-sync-dot[data-connected=true]{background:#28a745}.year-nav{gap:4px}.year-nav,.year-nav button{display:flex;align-items:center}.year-nav button{width:28px;height:32px;background:var(--primary-light);border:1.5px solid var(--primary);border-radius:6px;cursor:pointer;font-size:16px;font-weight:700;color:var(--primary);justify-content:center}.year-badge,.year-nav button:hover{background:var(--primary);color:white}.year-badge{border-radius:8px;padding:2px 14px;display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:90px;box-shadow:0 2px 8px rgba(30,58,95,.25);-webkit-user-select:none;-moz-user-select:none;user-select:none}.year-badge .year-western{font-weight:900;font-size:18px;letter-spacing:1px;line-height:1.2}.year-badge .year-reiwa{font-size:10px;font-weight:500;opacity:.8}.fs-scroll-outer,.pw-scroll-outer{flex:1 1;overflow:auto;-webkit-overflow-scrolling:touch;scrollbar-gutter:stable}.fs-scroll-outer::-webkit-scrollbar,.pw-scroll-outer::-webkit-scrollbar{width:8px;height:8px}.fs-scroll-outer::-webkit-scrollbar-track,.pw-scroll-outer::-webkit-scrollbar-track{background:var(--gray-100)}.fs-scroll-outer::-webkit-scrollbar-thumb,.pw-scroll-outer::-webkit-scrollbar-thumb{background:var(--gray-400);border-radius:4px}.fs-table,.pw-table{border-collapse:separate;border-spacing:0;font-size:11.5px;white-space:nowrap;table-layout:fixed}.fs-table thead,.pw-table thead{position:relative;z-index:50}.fs-table thead tr.h1 th,.pw-table thead tr.h1 th{background:#1e3a5f;color:white;padding:0 10px;height:28px;line-height:28px;border:0;border-right:1px solid rgba(255,255,255,.2);font-weight:800;font-size:11px;top:0;background-clip:padding-box}.fs-table thead tr.h1 th,.fs-table thead tr.h2 th,.pw-table thead tr.h1 th,.pw-table thead tr.h2 th{overflow:hidden;white-space:nowrap;text-align:center;position:-webkit-sticky;position:sticky;z-index:10}.fs-table thead tr.h2 th,.pw-table thead tr.h2 th{background:#2d5282;color:rgba(255,255,255,.9);padding:0 8px;height:24px;line-height:24px;border:0;border-right:1px solid rgba(255,255,255,.15);font-weight:600;font-size:10px;top:28px;background-clip:padding-box}.fs-table thead tr.h3 th,.pw-table thead tr.h3 th{background:#3a6491;color:rgba(255,255,255,.85);padding:0 6px;height:22px;line-height:22px;overflow:hidden;white-space:nowrap;border:0;border-right:1px solid rgba(255,255,255,.12);border-bottom:1px solid rgba(255,255,255,.2);text-align:center;font-weight:500;font-size:9.5px;position:-webkit-sticky;position:sticky;top:52px;z-index:10;background-clip:padding-box}.fs-table thead .grp-left,.pw-table thead .grp-left{background:#0d3349!important}.fs-table thead .ph-0,.pw-table thead .ph-0{background:#1a5276!important}.fs-table thead .ph-1,.pw-table thead .ph-1{background:#1b4f72!important}.fs-table thead .ph-2,.pw-table thead .ph-2{background:#17375e!important}.fs-table thead .ph-3,.pw-table thead .ph-3{background:#1a3a52!important}.fs-table thead .ph-4,.pw-table thead .ph-4{background:#154360!important}.fs-table .sticky-0{position:-webkit-sticky;position:sticky;left:0;z-index:5;background:white}.fs-table .sticky-1{left:150px}.fs-table .sticky-1,.pw-table .sticky-name{position:-webkit-sticky;position:sticky;z-index:5;background:white;box-shadow:2px 0 4px rgba(0,0,0,.06)}.pw-table .sticky-name{left:0}.fs-table thead th.sticky-0,.fs-table thead th.sticky-1,.pw-table thead th.sticky-name{background:#0d3349!important;z-index:25!important}.fs-table tbody td,.pw-table tbody td{padding:4px 6px;vertical-align:middle;color:var(--gray-700);background:white;border:1px solid #e8ecf0;text-align:center}.fs-table tbody td.sticky-0,.fs-table tbody td.sticky-1,.pw-table tbody td.sticky-name{background:#f0f7fd;font-weight:700;color:var(--primary-dark)}.fs-table tbody td.col-kubun{width:150px;min-width:150px;max-width:150px;padding:2px 3px}.fs-table tbody td.col-month,.pw-table tbody td.col-month{width:90px;min-width:90px;font-weight:700;font-size:11px;color:var(--primary);text-align:center;background:#f5f8ff}.fs-table tbody tr.company-row td,.pw-table tbody tr.company-row td{background:#e8f2fa;font-weight:800;color:var(--gray-900);padding:8px 10px;border-top:2px solid var(--primary);border-bottom:2px solid var(--primary-mid);border-left:none;border-right:none;text-align:left}.fs-table tbody tr.company-row td.sticky-0,.pw-table tbody tr.company-row td.sticky-name{background:#e8f2fa}.fs-table tbody tr.company-row a,.pw-table tbody tr.company-row a{font-weight:800;color:inherit}.fs-table tbody tr.company-row span,.pw-table tbody tr.company-row span{display:block;font-weight:400;font-size:10.5px;color:var(--gray-500)}.fs-table tbody tr.month-row:hover td,.pw-table tbody tr.month-row:hover td{background:#f0f7fd}.fs-table tbody tr.month-row.shade td,.pw-table tbody tr.month-row.shade td{background:#fafbfc}.deadline-cell{font-size:10.5px;font-weight:700;background:#f0f7fd!important;color:var(--primary-dark);text-align:center;padding:0 4px!important}.deadline-cell-overdue{color:#dc2626!important}.bonus-row-label{background:#fffbeb!important;color:#92400e!important;font-weight:700;font-size:11px;text-align:center}.cell-kubun-sel,.cell-select{width:100%;border:1px solid var(--gray-200);border-radius:4px;height:24px;font-size:11px;background:white}.cell-date-wrap,.cell-sel-wrap{position:relative;display:flex;align-items:center;height:26px;padding:0 4px 0 3px;cursor:pointer;min-width:20px}.cell-date-txt,.cell-sel-val{flex:1 1;font-size:11px;color:var(--gray-700);overflow:hidden;white-space:nowrap;min-width:0;text-align:left}.cell-date-icon,.cell-sel-icon{font-size:11px;color:var(--gray-400);flex-shrink:0;line-height:1;margin-left:1px}.cell-date-hidden,.cell-sel-abs{position:absolute;inset:0;opacity:0;width:100%;height:100%;cursor:pointer}.calendar-cell{border-radius:3px;transition:background .12s}.calendar-cell:hover{background:rgba(30,58,95,.07)}.calendar-cell .cell-date-txt.empty{color:var(--gray-400)}.calendar-cell .cell-date-icon{opacity:.42;transition:opacity .15s,color .15s}.calendar-cell:hover .cell-date-icon{opacity:.75;color:var(--gray-600)}.calendar-cell-input{pointer-events:none}.cell-edit-wrap{display:flex;align-items:center;cursor:pointer;min-height:20px;height:20px;border-radius:3px;padding:1px 3px;overflow:hidden;box-sizing:border-box;width:100%;border:none;background:transparent;font-family:inherit}.cell-edit-wrap:hover{background:rgba(30,58,95,.07)}.cell-edit-wrap .cell-disp{font-size:10.5px;color:var(--gray-700);flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left}.cell-edit-wrap .cell-disp.empty{color:var(--gray-300)}.cell-edit-wrap .edit-icon{font-size:9px;color:var(--gray-400);opacity:0;margin-left:3px;flex-shrink:0}.cell-edit-wrap:hover .edit-icon{opacity:1}.cell-active-control{width:100%;height:24px;border:1.5px solid var(--primary);border-radius:4px;background:white;font-size:11px;padding:0 4px}.workflow-empty{padding:32px;text-align:center;color:var(--gray-400)}.workflow-act-overlay{position:fixed;inset:0;background:rgba(15,23,42,.6);z-index:4000;display:flex;align-items:center;justify-content:center}.workflow-act-modal{background:white;border-radius:16px;width:900px;max-width:96vw;max-height:94vh;overflow:hidden;box-shadow:0 24px 64px rgba(15,23,42,.3);display:flex;flex-direction:column}.workflow-act-header{padding:16px 24px;background:linear-gradient(135deg,#1e3a5f,#2d5282);border-radius:16px 16px 0 0;display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:15px;font-weight:800;color:white}.workflow-act-header>div:last-child{display:flex;gap:10px;align-items:center}.workflow-act-cancel,.workflow-act-save{padding:8px 20px;border-radius:8px;font-size:13px;font-weight:700;font-family:inherit;cursor:pointer}.workflow-act-save{background:white;color:#1e3a5f;border:none;box-shadow:0 2px 8px rgba(0,0,0,.15)}.workflow-act-cancel{background:rgba(255,255,255,.15);color:white;border:1.5px solid rgba(255,255,255,.4)}.workflow-act-body{padding:24px;display:flex;flex-direction:column;gap:12px;overflow-y:auto;flex:1 1}.workflow-act-body label{display:block;font-size:12px;font-weight:700;color:#64748b}.workflow-act-body label span{color:#ef4444}.workflow-act-body label small{font-weight:400;color:#94a3b8}.workflow-act-body input,.workflow-act-body select,.workflow-act-body textarea{width:100%;padding:9px 12px;border:1.5px solid #e2e8f0;border-radius:8px;font-size:13px;font-family:inherit}.workflow-act-body input,.workflow-act-body select{height:40px;line-height:20px}.workflow-act-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:14px;gap:14px}.workflow-act-client{position:relative}.workflow-act-dropdown{position:absolute;top:100%;left:0;right:0;background:white;border:1.5px solid #e2e8f0;border-radius:8px;box-shadow:0 8px 24px rgba(15,23,42,.15);z-index:100;max-height:220px;overflow-y:auto}.workflow-act-dropdown button{width:100%;padding:9px 14px;cursor:pointer;font-size:13px;border:none;border-bottom:1px solid #f1f5f9;background:white;text-align:left}.workflow-act-dropdown button:hover{background:#f8faff}.workflow-act-dropdown span{color:#94a3b8;font-size:11px;margin-right:6px}.workflow-act-cats{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:6px;gap:6px}.workflow-act-cats button{padding:8px 4px;font-size:11.5px;font-weight:700;font-family:inherit;border-radius:8px;cursor:pointer;border:1.5px solid #e2e8f0;background:white;color:#64748b}.workflow-act-cats button.selected{background:#eff6ff;color:#1e3a5f;border-color:#1e3a5f}.workflow-act-error{padding:10px 14px;background:#fef2f2;border:1.5px solid #fecaca;border-radius:10px;color:#dc2626;font-size:13px;font-weight:700}.workflow-act-summary{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px;border-top:1px solid #f1f5f9;padding-top:14px}.workflow-act-summary span{display:block;margin-bottom:4px;color:#94a3b8;font-size:11px}.workflow-act-summary strong{display:block;color:#1f2937;font-size:13px}@media (max-width:720px){.workflow-act-header{align-items:flex-start;flex-direction:column}.workflow-act-grid,.workflow-act-summary{grid-template-columns:1fr}.workflow-act-cats{grid-template-columns:repeat(2,1fr)}}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:52px 24px;color:var(--gray-400);text-align:center;gap:12px}.empty-state .empty-icon{font-size:44px;opacity:.3}.empty-state .empty-text{font-size:15px;color:var(--gray-500);font-weight:700}.empty-state .empty-sub{font-size:12.5px;color:var(--gray-400)}.not-found-page,.not-found-panel{justify-content:center;align-items:center}.not-found-panel{width:min(100%,520px);min-height:220px;background:var(--white);border:1px solid var(--gray-200);border-radius:var(--radius);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;text-align:center;gap:10px;padding:36px 28px}.not-found-code{color:var(--primary);font-size:40px;font-weight:800;line-height:1}.not-found-panel h1{color:var(--gray-800);font-size:18px;font-weight:800}.not-found-panel p{color:var(--gray-500);font-size:13px}.text-right{text-align:right}.text-center{text-align:center}.text-muted{color:var(--gray-400)}.text-primary{color:var(--primary)}.text-danger{color:var(--danger)}.text-success{color:var(--success)}.text-warning{color:var(--warning)}.fw-bold{font-weight:700}.fw-black{font-weight:800}.d-flex{display:flex}.align-center{align-items:center}.gap-8{gap:8px}.gap-12{gap:12px}.mt-8{margin-top:8px}.mt-16{margin-top:16px}.mb-8{margin-bottom:8px}.mb-16{margin-bottom:16px}.flex-1{flex:1 1}.hidden{display:none!important}.text-sm{font-size:11.5px}.text-xs{font-size:10.5px}.nowrap,.truncate{white-space:nowrap}.truncate{overflow:hidden;text-overflow:ellipsis}.spinner{width:26px;height:26px;border:3px solid var(--gray-200);border-top-color:var(--primary);border-radius:50%;animation:spin .75s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}@media print{.btn,.card-actions,.sidebar,.table-toolbar,.top-header{display:none!important}.main-content,.page-body{overflow:visible}.page-body{padding:0}}.excel-table .freeze-no{position:-webkit-sticky;position:sticky;left:0;z-index:12;width:70px;min-width:70px;max-width:70px}.excel-table .freeze-company{position:-webkit-sticky;position:sticky;left:70px;z-index:12;width:200px;min-width:200px;box-shadow:4px 0 8px rgba(0,0,0,.07)}thead .freeze-company,thead .freeze-no{z-index:22!important;background:#1e3a5f!important}thead .freeze-company{box-shadow:4px 0 8px rgba(0,0,0,.15)}.excel-table tbody td.freeze-no{background:#f8f9fb;color:var(--gray-400);font-size:11px;text-align:center}.excel-table tbody tr:nth-child(2n) td.freeze-no{background:#eff1f4}.excel-table tbody tr:hover td.freeze-no{background:#e8f3ff}.excel-table tbody tr:hover td.freeze-company{background:#f0f7ff}.sales-no-link{color:var(--primary);font-weight:700;text-decoration:none;transition:color .15s}.sales-no-link:hover{text-decoration:underline}.company-link{color:var(--gray-800);font-weight:700;text-decoration:none;transition:color .15s}.company-link:hover{color:var(--primary);text-decoration:underline}.status-tabs{display:flex;align-items:center;gap:2px;padding:8px 12px 0;background:#f8fafc;border-bottom:2px solid #1e3a5f;overflow-x:auto;flex-shrink:0}.status-tab{display:inline-flex;align-items:center;gap:5px;padding:7px 16px;border-radius:6px 6px 0 0;font-size:12px;font-weight:600;border:1.5px solid #cbd5e0;border-bottom:none;background:#e2e8f0;color:#4a5568;cursor:pointer;white-space:nowrap;transition:all .15s;-webkit-user-select:none;-moz-user-select:none;user-select:none}.status-tab:hover{background:#c3dafe;color:#1a3a6b}.status-tab.active{background:#1e3a5f;border-color:#1e3a5f;color:white}.status-tab .tab-count{font-size:10px;font-weight:700;background:rgba(255,255,255,.3);border-radius:999px;padding:1px 6px;min-width:18px;text-align:center}.status-tab:not(.active) .tab-count{background:rgba(0,0,0,.1);color:#4a5568}.comp-view-tabs{display:flex;align-items:center;gap:2px;padding:8px 12px 0;background:#f8fafc;border-bottom:2px solid #1e3a5f;overflow-x:auto;flex-shrink:0}.comp-view-tab{display:inline-flex;align-items:center;gap:5px;padding:7px 16px;border-radius:6px 6px 0 0;font-size:12px;font-weight:700;border:1.5px solid #cbd5e0;border-bottom:none;background:#e2e8f0;color:#4a5568;cursor:pointer;white-space:nowrap;transition:all .15s;-webkit-user-select:none;-moz-user-select:none;user-select:none}.comp-view-tab:hover{background:#c3dafe;color:#1a3a6b}.comp-view-tab.active{background:#1e3a5f;border-color:#1e3a5f;color:white}.comp-view-tab .tab-count{font-size:10px;font-weight:700;background:rgba(255,255,255,.3);border-radius:999px;padding:1px 6px;min-width:18px;text-align:center}.comp-view-tab:not(.active) .tab-count{background:rgba(0,0,0,.1);color:#4a5568}.comp-year-nav{display:flex;align-items:center;gap:6px;margin-left:16px;padding-bottom:2px}.comp-year-btn{padding:3px 11px;border-radius:5px;cursor:pointer;font-size:11.5px;font-weight:700;border:1.5px solid #cbd5e0;background:#dde4ee;color:#4a5568;transition:all .15s}.comp-year-btn:hover{background:#c3dafe;color:#1a3a6b}.comp-year-label{font-size:13px;font-weight:800;color:#1e3a5f;min-width:72px;text-align:center}.comp-month-tabs{display:flex;gap:2px;align-items:center;flex-shrink:0;overflow-x:auto;margin-left:24px}.comp-month-tab{padding:6px 14px;border-radius:6px 6px 0 0;cursor:pointer;font-size:12px;font-weight:600;border:1.5px solid #cbd5e0;border-bottom:none;background:#e2e8f0;color:#4a5568;transition:all .15s;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;user-select:none}.comp-month-tab:hover{background:#c3dafe;color:#1a3a6b}.comp-month-tab.active{background:#1e3a5f;border-color:#1e3a5f;color:white}.comp-table{border-collapse:separate;border-spacing:0;font-size:11.5px;white-space:nowrap;table-layout:fixed;width:100%}.comp-table thead{background:#1e293b}.comp-table thead tr th{background:#1e293b;color:white;padding:0 10px;height:31px;line-height:31px;text-align:center;font-weight:800;font-size:11px;border:1px solid rgba(255,255,255,.2);border-top:none;border-bottom:none;box-shadow:none;position:-webkit-sticky;position:sticky;top:0;z-index:20;overflow:hidden;text-overflow:ellipsis}.comp-table thead tr:first-child th{top:0}.comp-table thead tr:nth-child(2) th{top:31px;height:31px;line-height:31px;font-size:10.5px;font-weight:700}.comp-table thead tr:first-child th[rowspan="2"]{vertical-align:middle}.comp-table thead .gh-monthly{background:#1e4080!important}.comp-table thead .gh-annual{background:#1e5799!important}.comp-table thead .sub-monthly{background:#1e4080!important}.comp-table thead .sub-annual{background:#1e5799!important}.comp-table tbody td{padding:5px 9px;border:1px solid #e8ecf0;vertical-align:middle;color:#374151;background:white;overflow:hidden;text-overflow:ellipsis}.comp-table tbody tr:hover td{background:#f0f7fd!important}.comp-table tbody tr:nth-child(2n) td{background:#fafbfc}.comp-table .sticky-col{position:-webkit-sticky;position:sticky;left:0;background:white;z-index:12;box-shadow:3px 0 6px rgba(0,0,0,.08)}.comp-table .sticky-col+.sticky-col{left:60px}.comp-table thead .sticky-col{background:#1e293b!important;z-index:22}.comp-table tbody tr:hover td.sticky-col{background:#e4f0fa!important}.comp-table td.text-right{text-align:right;padding-right:12px}.comp-monthly-table{border-collapse:separate;border-spacing:0;font-size:11.5px;white-space:nowrap;width:100%;table-layout:fixed}.comp-monthly-table thead th{background:#1e3a5f;color:white;padding:7px 10px;text-align:center;font-weight:700;font-size:11px;border-left:1px solid rgba(255,255,255,.2);border-right:1px solid rgba(255,255,255,.2);border-bottom:none;position:-webkit-sticky;position:sticky;top:0;z-index:20;overflow:hidden;text-overflow:ellipsis}.comp-monthly-table thead th.h-monthly{background:#1e4080!important}.comp-monthly-table thead th.h-annual{background:#1e5799!important}.comp-monthly-table thead th.h-spot{background:#0e6b85!important}.comp-monthly-table tbody td{padding:5px 9px;border:1px solid #e8ecf0;vertical-align:middle;color:#374151;background:white;overflow:hidden;text-overflow:ellipsis}.comp-monthly-table tbody tr:nth-child(2n) td{background:#fafbfc}.comp-monthly-table tbody tr:hover td{background:#f0f7fd!important}.comp-monthly-table .sticky-col{position:-webkit-sticky;position:sticky;left:0;background:white;z-index:12;box-shadow:3px 0 6px rgba(0,0,0,.08)}.comp-monthly-table .sticky-col+.sticky-col{left:60px}.comp-monthly-table thead .sticky-col{background:#1e3a5f!important;z-index:22}.comp-monthly-table tbody tr:hover td.sticky-col{background:#e4f0fa!important}.info-card{background:white;border-radius:14px;border:1px solid var(--gray-200);box-shadow:0 2px 12px rgba(0,0,0,.07);display:flex;flex-direction:column;overflow:hidden;transition:box-shadow .2s,transform .2s}.info-card:hover{box-shadow:0 6px 24px rgba(0,0,0,.12);transform:translateY(-2px)}.info-card-header{display:flex;align-items:center;gap:10px;padding:10px 14px;background:linear-gradient(135deg,#1e3a5f,#2d5282)}.info-card-icon{width:30px;height:30px;border-radius:7px;display:flex;align-items:center;justify-content:center;font-size:14px;flex-shrink:0;background:rgba(255,255,255,.18)}.info-card-title{font-size:13px;font-weight:800;color:white}.info-card-body{padding:8px 14px;flex:1 1;display:flex;flex-direction:column;gap:6px}.info-card-footer{padding:8px 14px;border-top:1px solid var(--gray-100);display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}.btn-card-action{padding:5px 14px;font-size:11.5px;font-weight:700;background:linear-gradient(135deg,#1e3a5f,#2d5282);color:white;border:none;border-radius:7px;cursor:pointer;transition:opacity .15s,transform .1s;font-family:inherit;display:flex;align-items:center;gap:5px}.btn-card-action:hover{opacity:.88;transform:scale(1.02)}.metric-row{display:flex;align-items:center;justify-content:space-between;padding:6px 12px;border-radius:7px;background:var(--gray-50)}.metric-label{font-size:11.5px;font-weight:600;color:var(--gray-600)}.metric-value{font-size:18px;font-weight:900;line-height:1;display:flex;align-items:baseline;gap:4px}.metric-value .unit{font-size:11px;font-weight:600;color:inherit;opacity:.8}.metric-value.danger{color:#dc2626}.metric-value.warn{color:#d97706}.metric-value.ok{color:#059669}.metric-value.accent{color:var(--primary)}.metric-value.neutral{color:var(--gray-500);font-size:16px}.announce-panel{background:white;border-radius:14px;border:1px solid var(--gray-200);box-shadow:0 2px 12px rgba(0,0,0,.07);display:flex;flex-direction:column;overflow:hidden;flex-shrink:0}.announce-header{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;background:linear-gradient(135deg,#1e3a5f,#2d5282)}.announce-header-left{display:flex;align-items:center;gap:10px}.announce-icon{width:30px;height:30px;border-radius:7px;display:flex;align-items:center;justify-content:center;font-size:14px;background:rgba(255,255,255,.18)}.announce-title{font-size:13px;font-weight:800;color:white}.announce-subtitle{font-size:11px;color:rgba(255,255,255,.6);margin-left:6px}.btn-announce-new{padding:5px 14px;font-size:11.5px;font-weight:700;background:rgba(255,255,255,.18);color:white;border:1.5px solid rgba(255,255,255,.35);border-radius:7px;cursor:pointer;transition:background .15s;font-family:inherit}.btn-announce-new:hover{background:rgba(255,255,255,.28)}.announce-list{padding:0;flex-shrink:0}.announce-list-header{display:flex;align-items:center;gap:0;padding:5px 12px;margin-bottom:2px;border-bottom:1.5px solid var(--gray-200)}.announce-list-header .ann-col-title-label,.announce-list-header .announce-col-author,.announce-list-header .announce-col-date{font-size:11px;font-weight:700;color:rgba(0,0,0,.4)}.announce-list-header .ann-col-title-label{flex:1 1}.announce-pager{display:flex;align-items:center;justify-content:space-between;padding:8px 14px 10px;border-top:1px solid var(--gray-100);flex-shrink:0}.announce-pager-info{font-size:11.5px;color:var(--gray-500)}.announce-pager-btns{display:flex;gap:6px}.btn-ann-page{padding:4px 14px;font-size:12px;font-weight:700;background:white;color:#1e3a5f;border:1.5px solid #c7d2fe;border-radius:7px;cursor:pointer;font-family:inherit;transition:all .15s}.btn-ann-page:hover:not(:disabled){background:#eef2ff;border-color:#6366f1}.btn-ann-page:disabled{opacity:.35;cursor:default}.ann-search-input{padding:4px 10px 4px 30px;font-size:12px;font-weight:600;font-family:inherit;background:#ffffff;color:#1e3a5f;border:1.5px solid rgba(255,255,255,.6);border-radius:7px;outline:none;width:160px;transition:width .2s}.ann-search-input::placeholder{color:#94a3b8}.ann-search-input:focus{width:200px}.announce-empty{padding:24px 0;text-align:center;color:var(--gray-400);font-size:13px}.announce-item{display:flex;align-items:center;gap:0;padding:9px 12px;border-radius:8px;border:1px solid var(--gray-100);background:var(--gray-50);cursor:pointer;transition:background .15s,border-color .15s}.announce-item:hover{background:#eef2ff;border-color:#c7d2fe}.announce-col-date{width:110px;flex-shrink:0;font-size:13px;color:#374151;font-weight:600;white-space:nowrap}.announce-col-author{width:110px;flex-shrink:0;padding-right:12px;border-right:1.5px solid var(--gray-200);margin-right:14px}.announce-col-author,.announce-item-title{font-size:13px;font-weight:600;color:#1e3a5f;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.announce-item-title{flex:1 1}.announce-delete{flex-shrink:0;background:none;border:none;cursor:pointer;color:var(--gray-300);font-size:13px;padding:2px 5px;border-radius:4px;transition:color .15s,background .15s;line-height:1;margin-left:8px}.announce-delete:hover{color:#dc2626;background:#fef2f2}.ann-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:1000;align-items:center;justify-content:center}.ann-overlay.open{display:flex}.ann-post-modal{background:white;border-radius:16px;overflow:hidden;width:90vw;max-width:1100px;height:85vh;max-height:85vh;box-shadow:0 20px 60px rgba(0,0,0,.25);display:flex;flex-direction:column}.ann-modal-header{padding:16px 22px;background:linear-gradient(135deg,#1e3a5f,#2d5282);display:flex;align-items:center;gap:10px}.ann-modal-header h3{font-size:14px;font-weight:800;color:white;margin:0}.ann-modal-body{padding:28px 32px;display:flex;flex-direction:column;gap:14px;flex:1 1;overflow-y:auto}.ann-modal-body label{font-size:12.5px;font-weight:700;color:var(--gray-700);display:block;margin-bottom:5px}.ann-modal-body input,.ann-modal-body textarea{width:100%;padding:10px 14px;border:1.5px solid var(--gray-200);border-radius:8px;font-size:13.5px;font-family:inherit;color:var(--gray-800);background:var(--gray-50);box-sizing:border-box;transition:border-color .15s}.ann-modal-body input:focus,.ann-modal-body textarea:focus{outline:none;border-color:#1e3a5f;background:white}.ann-modal-body textarea{resize:none;flex:1 1;min-height:200px}.ann-modal-body .textarea-wrap{flex:1 1;display:flex;flex-direction:column}.ann-modal-body .textarea-wrap textarea{flex:1 1}.ann-modal-footer{display:flex;justify-content:flex-end;gap:10px;padding:14px 32px;border-top:1px solid var(--gray-100);flex-shrink:0}.btn-ann-cancel{padding:8px 20px;font-size:13px;font-weight:600;background:var(--gray-100);color:var(--gray-600);border:1.5px solid var(--gray-200);border-radius:8px;cursor:pointer;font-family:inherit;transition:all .15s}.btn-ann-cancel:hover{background:var(--gray-200)}.btn-ann-submit{padding:8px 22px;font-size:13px;font-weight:700;background:linear-gradient(135deg,#1e3a5f,#2d5282);color:white;border:none;border-radius:8px;cursor:pointer;font-family:inherit;transition:opacity .15s}.btn-ann-submit:hover{opacity:.88}.ann-detail-modal{background:white;border-radius:16px;overflow:hidden;width:90vw;max-width:1100px;height:85vh;max-height:85vh;box-shadow:0 20px 60px rgba(0,0,0,.25);display:flex;flex-direction:column}.ann-detail-body{padding:28px 32px;display:flex;flex-direction:column;gap:16px;flex:1 1;overflow-y:auto}.ann-detail-content{font-size:14px;color:var(--gray-700);line-height:1.8;white-space:pre-wrap;background:var(--gray-50);border:1px solid var(--gray-100);border-radius:10px;padding:20px 22px;flex:1 1;min-height:120px}.ann-detail-footer{padding:14px 24px;display:flex;justify-content:flex-end;border-top:1px solid var(--gray-100);flex-shrink:0}.btn-ann-header-delete{padding:6px 16px;font-size:12.5px;font-weight:700;background:rgba(220,38,38,.25);color:#fecaca;border:1.5px solid rgba(220,38,38,.5);border-radius:7px;cursor:pointer;font-family:inherit;transition:background .15s}.btn-ann-header-delete:hover{background:rgba(220,38,38,.5);color:white}.btn-ann-all-action{padding:5px 14px;font-size:11.5px;font-weight:700;background:rgba(255,255,255,.18);color:white;border:1.5px solid rgba(255,255,255,.35);border-radius:7px;cursor:pointer;transition:background .15s;font-family:inherit;text-decoration:none;display:inline-flex;align-items:center}.btn-ann-all-action:hover{background:rgba(255,255,255,.28)}.act-detail-modal{border-radius:16px;width:95vw;max-width:1200px;max-height:90vh;box-shadow:0 20px 60px rgba(0,0,0,.28)}.act-detail-modal,.activity-panel{background:white;overflow:hidden;display:flex;flex-direction:column}.activity-panel{border-radius:14px;border:1px solid var(--gray-200);box-shadow:0 2px 12px rgba(0,0,0,.07);flex-shrink:0}.activity-panel-header{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;background:linear-gradient(135deg,#1e3a5f,#2d5282)}.activity-panel-title{font-size:13px;font-weight:800;color:white}.activity-preview-table{width:100%;border-collapse:collapse;font-size:12.5px;table-layout:fixed}.activity-preview-table th{padding:6px 10px;background:#eef2ff;color:#1e3a5f;font-size:11px;font-weight:700;text-align:left;border-bottom:1.5px solid #c7d2fe}.activity-preview-table td{padding:16px 10px;border-bottom:1px solid var(--gray-100);vertical-align:middle;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.activity-preview-table tr:last-child td{border-bottom:none}.activity-preview-table tr:hover td{background:#eef2ff;cursor:pointer}.cat-badge{display:inline-flex;align-items:center;padding:2px 9px;border-radius:20px;font-size:10.5px;font-weight:700;white-space:nowrap}.cat-basic{background:#dbeafe;color:#1d4ed8}.cat-rep{background:#ede9fe;color:#5b21b6}.cat-address{background:#dcfce7;color:#166534}.cat-tax{background:#fef9c3;color:#854d0e}.cat-payroll{background:#fce7f3;color:#9d174d}.cat-officer{background:#ffedd5;color:#9a3412}.cat-mgmt{background:#e2e8f0;color:#334155}.cat-other{background:#f1f5f9;color:#475569}.cell-after{font-weight:700;color:#059669}.cell-before{color:#94a3b8}.change-requests-page{gap:14px}.change-requests-card,.change-requests-page{overflow:hidden;flex:1 1;min-height:0;display:flex;flex-direction:column}.change-requests-card .table-wrapper{overflow-y:auto!important;overflow-x:auto!important;flex:1 1;min-height:0}.change-requests-table thead th{position:-webkit-sticky;position:sticky;top:0;z-index:2;background:#1e3a5f}.change-bulk-actions{display:inline-flex;align-items:center;gap:8px}.select-all-bar{display:flex;align-items:center;gap:10px;padding:8px 14px;background:#eff6ff;border-top:1px solid #bfdbfe;border-bottom:1px solid #bfdbfe;color:#1d4ed8;font-size:13px;font-weight:700;flex-shrink:0}.diff-table{width:100%;border-collapse:collapse;font-size:12.5px}.diff-table th{background:var(--gray-100);padding:8px 12px;text-align:left;font-weight:700;font-size:11.5px;letter-spacing:.03em}.diff-table td,.diff-table th{border:1px solid var(--gray-200)}.diff-table td{padding:7px 12px;vertical-align:top}.diff-old{color:#64748b}.diff-new{color:#059669;font-weight:700}.change-detail-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px;margin-bottom:16px}.change-reason-box{background:var(--gray-50)}.change-reason-box,.change-reject-box{padding:10px 14px;border-radius:var(--radius);font-size:13px}.change-reject-box{background:var(--danger-light);color:var(--danger)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.legacy-page-body{padding:0;gap:0;display:flex;flex-direction:column;overflow:hidden}.legacy-page-card{border-radius:0;border:none;flex:1 1;display:flex;flex-direction:column;min-height:0}.legacy-table-toolbar{flex-wrap:nowrap;gap:10px}.legacy-table-wrapper{flex:1 1;min-height:0;overflow:auto}.legacy-annual-table{min-width:980px}.legacy-empty-cell{text-align:center;color:#9ca3af;padding:32px}.legacy-settings-note{margin:0 0 14px;color:#64748b;font-size:13px}.legacy-settings-list{display:grid;grid-gap:8px;gap:8px}.legacy-settings-list>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px}.legacy-settings-list strong{font-size:13px;color:#1e3a5f}.legacy-settings-list span{font-size:11px;font-weight:700;color:#64748b;text-transform:uppercase}.year-filter-bar{display:flex;align-items:center;gap:8px;padding:10px 14px;border-bottom:1px solid #e5e7eb;background:#f8fafc;flex-shrink:0}.year-filter-bar label{font-size:12px;font-weight:800;color:#475569}.year-sel{padding:6px 28px 6px 10px;border:1.5px solid #cbd5e1;border-radius:7px;background:white;color:#1e3a5f;font-size:13px;font-family:inherit}.month-tabs{display:flex;align-items:flex-end;gap:3px;padding:8px 12px 0;background:#eef2f7;border-bottom:1px solid #cbd5e1;overflow-x:auto;flex-shrink:0}.month-tab{border:1px solid #cbd5e1;background:#f8fafc;color:#475569;border-radius:7px 7px 0 0;padding:7px 14px;font-size:12px;font-weight:800;font-family:inherit;cursor:pointer;white-space:nowrap}.month-tab.active{background:white;color:#1e3a5f;box-shadow:inset 0 -2px 0 #1e3a5f}.month-tab.add-tab{min-width:42px;color:#0f766e}.kstab-toolbar{display:flex;align-items:center;gap:8px;padding:9px 12px;border-bottom:1px solid #e5e7eb;background:white;flex-shrink:0}.kstab-toolbar .count-label{font-size:13px;font-weight:900;color:#1e3a5f;min-width:54px}.kstab-toolbar select{padding:6px 10px;border:1.5px solid #cbd5e1;border-radius:7px;background:white;font-size:12px;font-weight:700;font-family:inherit;color:#334155}.trs-search{position:relative;margin-left:auto}.trs-search input{width:210px;padding:7px 10px 7px 30px;border:1.5px solid #cbd5e1;border-radius:8px;font-size:12px;font-family:inherit}.trs-search .search-icon{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:#94a3b8;font-size:12px}.trs-scroll{flex:1 1;min-height:0;overflow:auto;background:white}.trs-table{border-collapse:separate;border-spacing:0;min-width:1900px;width:100%;font-size:11.5px;white-space:nowrap}.trs-table td,.trs-table th{border-right:1px solid #dbe2ea;border-bottom:1px solid #dbe2ea;padding:6px 8px;background:white;color:#334155;vertical-align:middle}.trs-table thead th{position:-webkit-sticky;position:sticky;top:0;z-index:20;text-align:center;color:white;font-weight:800}.trs-table thead tr.h2 th{top:32px;background:#2d5282}.trs-table .gh-base{background:#1e3a5f}.trs-table .gh-main{background:#1e3a5f;letter-spacing:.03em}.trs-table .fc0{min-width:110px;width:110px;background:#f8fafc}.trs-table .fc0,.trs-table .fc1{position:-webkit-sticky;position:sticky;z-index:12;box-shadow:3px 0 5px rgba(15,23,42,.08)}.trs-table .fc1{left:110px;min-width:220px;width:220px;background:white;font-weight:800;color:#1e3a5f}.trs-table thead .fc0,.trs-table thead .fc1{z-index:30;color:white}.trs-table tbody tr:nth-child(2n) td{background:#f8fafc}.trs-table tbody tr:hover td{background:#eef6ff}.trs-table tbody tr:hover .fc0,.trs-table tbody tr:hover .fc1{background:#e8f3ff}.trs-table input,.trs-table select{width:100%;min-height:24px;border:1px solid #cbd5e1;border-radius:5px;background:white;color:#334155;font-size:11.5px;font-family:inherit;padding:2px 5px}@media (max-width:900px){.kstab-toolbar,.legacy-table-toolbar{flex-wrap:wrap}.trs-search{margin-left:0;width:100%}.trs-search input{width:100%}}.year-filter-bar{padding:5px 14px;background:#eef2f7;border-bottom:none;position:relative;z-index:25}.year-filter-bar label,.year-filter-label{font-size:11.5px;font-weight:700;color:#4a5568;white-space:nowrap}.year-sel{padding:0 8px;border:1.5px solid #cbd5e0;border-radius:6px;-moz-appearance:auto;appearance:auto;-webkit-appearance:auto}.year-add-button,.year-sel{height:30px;font-size:12px;font-weight:700;cursor:pointer}.year-add-button{padding:0 10px;border:1.5px dashed #90cdf4;border-radius:6px;background:#ffffff;color:#2563eb;font-family:inherit}.year-add-button:hover{background:#ebf8ff}.month-tabs{align-items:center;gap:2px;padding:4px 12px 0;background:#f8fafc;border-bottom:2px solid #1e3a5f;position:relative;z-index:25}.month-tab{padding:7px 16px;border:1.5px solid #cbd5e0;border-bottom:none;border-radius:6px 6px 0 0;background:#e2e8f0;color:#4a5568;font-weight:600;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:all .15s}.month-tab:hover{background:#c3dafe;color:#1a3a6b}.month-tab.active{background:#1e3a5f;color:white;border-color:#1e3a5f;box-shadow:none}.month-tab.unreflected{position:relative;border-top-color:#f59e0b}.month-tab.unreflected:after{content:"";position:absolute;top:4px;right:5px;width:6px;height:6px;border-radius:999px;background:#f59e0b}.month-tab.active.unreflected:after{background:#fbbf24}.month-tab.add-tab{min-width:auto;background:none;border:1.5px dashed #90cdf4;color:#3182ce;font-size:18px;font-weight:400;padding:4px 12px}.month-tab.add-tab:hover{background:#ebf8ff}.kstab-toolbar{padding:7px 14px;border-bottom:1px solid #e8ecf0;flex-wrap:wrap;position:relative;z-index:30}.kstab-toolbar .count-label{font-size:18px;font-weight:700;color:var(--gray-800);min-width:auto}.trs-table .fc0{left:0;width:150px;min-width:150px;max-width:150px;text-align:center;background:white;box-shadow:none}.trs-table .fc1{left:150px;box-shadow:4px 0 8px -2px rgba(0,0,0,.12)}.trs-table thead th.fc0,.trs-table thead th.fc1{background:#1e293b!important;z-index:30}.trs-table .gh-light{background:#1e3a5f}.reflect-status-badge{display:inline-block;margin-left:8px;padding:3px 10px;border:1px solid;border-radius:999px;font-size:11px;font-weight:700}.reflect-status-badge.done{background:#ecfdf5;border-color:#6ee7b7;color:#059669}.reflect-status-badge.pending{background:#fffbeb;border-color:#fde68a;color:#d97706}.new-year-check{margin-top:12px;border-radius:8px;padding:12px 16px;font-size:13px;font-weight:700}.new-year-check.ready{background:#ecfdf5;border:1.5px solid #6ee7b7;color:#047857}.new-year-check.blocked{background:#fef2f2;border:1.5px solid #fecaca;color:#dc2626}.trs-date-wrap{height:26px;padding:0 3px;border-radius:3px;position:relative}.trs-date-wrap:hover{background:rgba(30,58,95,.07)}.trs-date-wrap .cell-date-txt{font-size:11px;color:var(--gray-700);flex:1 1;min-width:0;white-space:nowrap;overflow:hidden}.trs-date-wrap .cell-date-txt.empty{color:var(--gray-400)}.trs-date-wrap .cell-date-icon{font-size:10px;opacity:.35;flex-shrink:0;transition:opacity .15s,font-size .15s}.trs-date-wrap:hover .cell-date-icon{opacity:.7}.trs-date-hidden{pointer-events:none}.client-incremental-search{position:relative;z-index:3}.modal-body:has(.client-search-dropdown){overflow:visible}.client-search-helper{margin-left:6px;color:var(--gray-400);font-size:11px;font-weight:400}.client-search-box{position:relative}.client-search-input{padding-right:56px}.client-search-clear{position:absolute;top:50%;right:8px;transform:translateY(-50%);border:1px solid var(--gray-200);border-radius:999px;background:white;color:var(--gray-600);cursor:pointer;font-size:11px;font-weight:700;line-height:1;padding:5px 9px}.client-search-clear:hover{background:var(--gray-50);color:var(--primary)}.client-search-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:120;max-height:260px;overflow-y:auto;border:1.5px solid var(--gray-200);border-radius:10px;background:white;box-shadow:0 12px 28px rgba(15,23,42,.16);padding:4px}.client-search-option{display:flex;width:100%;align-items:center;gap:10px;border:0;border-radius:8px;background:white;color:var(--gray-700);cursor:pointer;font-family:inherit;font-size:13px;padding:9px 10px;text-align:left}.client-search-option.active,.client-search-option:hover{background:#f0f7ff}.client-search-no{min-width:42px;color:var(--gray-400);font-size:11px;font-weight:700}.client-search-main{display:flex;min-width:0;flex:1 1;flex-direction:column;gap:2px}.client-search-name{font-weight:700}.client-search-name,.client-search-sub{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.client-search-sub{color:var(--gray-400);font-size:11px}.client-search-empty{padding:12px;color:var(--gray-400);font-size:12px;text-align:center}.client-search-selected{display:flex;align-items:center;gap:8px;margin-top:7px;color:var(--gray-700);font-size:13px;font-weight:700}.client-search-selected .badge{font-size:12px}.sales-detail-page{gap:14px;overflow-y:auto}.sales-back-link{color:var(--primary);font-size:13px;font-weight:700;text-decoration:none}.sales-hero{align-items:center;background:#223f68;border-radius:8px;color:white;display:flex;justify-content:space-between;min-height:112px;padding:20px 24px}.sales-no{color:rgba(255,255,255,.62);font-size:11px;font-weight:700;margin-bottom:8px}.sales-title-row{align-items:center;display:flex;flex-wrap:wrap;gap:9px}.sales-title-row h1{font-size:24px;font-weight:900;line-height:1.2;margin:0}.sales-type{color:rgba(255,255,255,.75);font-size:13px;font-weight:700}.sales-hero-edit{background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.34);border-radius:7px;color:white;cursor:pointer;font-size:12px;font-weight:800;padding:8px 16px}.sales-info-grid{background:white;border-radius:8px;box-shadow:var(--shadow-sm);display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(7,minmax(120px,1fr));padding:16px}.sales-info-card{background:#f8fafc;border:1px solid var(--gray-200);border-radius:7px;min-height:62px;padding:12px 14px}.sales-info-label{color:var(--gray-400);font-size:11px;font-weight:800;margin-bottom:8px}.sales-info-value{color:var(--gray-700);font-size:13px;font-weight:800;overflow-wrap:anywhere}.sales-panel-row{display:grid;grid-gap:14px;gap:14px;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.sales-panel{background:white;border-radius:8px;box-shadow:var(--shadow-sm);overflow:hidden}.sales-history-header,.sales-panel-header{align-items:center;display:flex;gap:8px;min-height:40px;padding:10px 14px}.sales-history-header h2,.sales-panel-header h2{color:white;flex:1 1;font-size:13px;font-weight:900;margin:0}.sales-history-header h2{color:var(--gray-700)}.sales-panel-header.task{background:#c25c1a}.sales-panel-header.ktw{background:#188b79}.sales-panel-header button{border:1px solid rgba(255,255,255,.28);border-radius:6px;cursor:pointer;padding:5px 10px}.sales-panel-chip,.sales-panel-header button{background:rgba(255,255,255,.18);color:white;font-size:11px;font-weight:800}.sales-panel-chip{border-radius:999px;padding:3px 8px}.sales-panel-body{border-top:1px solid var(--gray-100);padding:14px}.sales-inline-form{align-items:center;border-bottom:1px solid var(--gray-100);display:grid;grid-gap:8px;gap:8px;grid-template-columns:120px minmax(0,1fr) auto auto;padding:12px 14px}.sales-activity-form input,.sales-activity-form select,.sales-activity-form textarea,.sales-inline-form input,.sales-memo-form textarea{border:1px solid var(--gray-300);border-radius:7px;color:var(--gray-700);font-family:inherit;font-size:13px;padding:9px 10px}.sales-memo-form{border-bottom:1px solid var(--gray-100);padding:12px 14px}.sales-activity-form textarea,.sales-memo-form textarea{resize:vertical;width:100%}.sales-activity-form>div,.sales-memo-form>div{display:flex;gap:8px;justify-content:flex-end;margin-top:8px}.sales-empty{color:var(--gray-400);font-size:13px;font-weight:700;padding:16px 0;text-align:center}.sales-empty.history{min-height:86px;padding-top:42px}.sales-task-list{display:flex;flex-direction:column;gap:7px}.sales-task-item{align-items:center;border:1px solid var(--gray-200);border-radius:7px;display:grid;grid-gap:8px;gap:8px;grid-template-columns:22px 92px minmax(0,1fr) 24px;padding:8px 10px}.sales-task-item.done{background:#f0fdf4}.sales-task-check{background:white;border:1.5px solid var(--gray-300);border-radius:50%;color:#059669;cursor:pointer;font-size:12px;font-weight:900;height:20px;line-height:16px;width:20px}.sales-task-date{color:var(--gray-500);font-size:12px;font-weight:800}.sales-task-text{color:var(--gray-700);font-size:13px;min-width:0;overflow-wrap:anywhere}.sales-task-item.done .sales-task-text{color:var(--gray-400);text-decoration:line-through}.sales-delete{background:transparent;border:0;color:var(--gray-400);cursor:pointer;font-size:16px;font-weight:900}.sales-memo-entry{background:#f8fafc;border:1px solid var(--gray-200);border-radius:7px;color:var(--gray-700);font-size:13px;line-height:1.6;margin-bottom:8px;padding:10px 36px 10px 12px;position:relative}.sales-memo-date{color:var(--gray-400);font-size:11px;font-weight:800;margin-bottom:3px}.sales-history-item .sales-delete,.sales-memo-entry .sales-delete{position:absolute;right:8px;top:8px}.sales-history-panel{min-height:140px}.sales-history-header{background:#f8fafc;border-bottom:1px solid var(--gray-100)}.sales-activity-form{border-bottom:1px solid var(--gray-100);display:grid;grid-gap:8px;gap:8px;grid-template-columns:140px 140px minmax(0,1fr);padding:12px 14px}.sales-activity-form>div{grid-column:1/-1}.sales-history-body{padding:14px}.sales-history-item{display:grid;grid-gap:12px;gap:12px;grid-template-columns:34px minmax(0,1fr);padding:8px 38px 14px 2px;position:relative}.sales-history-icon{align-items:center;background:#eff6ff;border:2px solid #bfdbfe;border-radius:50%;display:flex;height:34px;justify-content:center;width:34px}.sales-history-meta{align-items:center;color:var(--gray-500);display:flex;gap:8px;font-size:12px;font-weight:800;margin-bottom:4px}.sales-history-content{color:var(--gray-700);font-size:13px;line-height:1.7;overflow-wrap:anywhere}.sales-edit-grid{display:grid;grid-gap:14px;gap:14px;grid-template-columns:1fr 1fr}.sales-edit-grid label{display:flex;flex-direction:column;gap:6px}.sales-edit-grid label>span{color:var(--gray-600);font-size:12px;font-weight:800}.sales-edit-grid .wide{grid-column:1/-1}@media (max-width:1100px){.sales-info-grid{grid-template-columns:repeat(3,minmax(140px,1fr))}.sales-panel-row{grid-template-columns:1fr}}@media (max-width:720px){.sales-hero,.sales-title-row{align-items:flex-start;flex-direction:column}.sales-activity-form,.sales-edit-grid,.sales-info-grid,.sales-inline-form{grid-template-columns:1fr}}.client-detail-page{display:flex;flex-direction:column;height:100%;min-height:0;overflow:hidden}.client-detail-page-body{display:flex;flex:1 1;flex-direction:column;gap:16px;min-height:0;overflow:auto;padding:20px 24px}.client-detail-hero{align-items:flex-start;background:linear-gradient(135deg,#0d2240,#1a6b8a 60%,#2196f3);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);color:white;display:flex;flex-shrink:0;gap:20px;overflow:hidden;padding:28px 32px;position:relative}.client-detail-hero:after,.client-detail-hero:before{background:rgba(255,255,255,.05);border-radius:50%;content:"";position:absolute}.client-detail-hero:before{height:220px;right:-60px;top:-40px;width:220px}.client-detail-hero:after{bottom:-30px;height:140px;right:60px;width:140px}.client-detail-hero-actions,.client-detail-hero-avatar,.client-detail-hero-info,.client-detail-hero-staff{position:relative;z-index:1}.client-detail-hero-avatar{align-items:center;background:rgba(255,255,255,.15);border:2px solid rgba(255,255,255,.2);border-radius:14px;display:flex;flex-shrink:0;font-size:28px;height:64px;justify-content:center;width:64px}.client-detail-hero-info{flex:1 1;min-width:180px}.client-detail-hero-no{color:rgba(255,255,255,.6);font-size:12px;font-weight:700;letter-spacing:.08em;margin-bottom:5px;text-transform:uppercase}.client-detail-hero-name{font-size:22px;font-weight:800;margin-bottom:6px;overflow-wrap:anywhere}.client-detail-hero-tags{display:flex;flex-wrap:wrap;gap:8px}.client-detail-hero-tag{background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.2);border-radius:999px;color:rgba(255,255,255,.9);font-size:11.5px;font-weight:600;padding:3px 10px}.client-detail-hero-staff{display:flex;flex-wrap:wrap;gap:20px}.client-detail-hero-staff-group{display:flex;gap:20px}.client-detail-hero-staff-divider{align-self:stretch;background:rgba(255,255,255,.2);margin:2px 0;width:1px}.client-detail-hero-staff-item{display:flex;flex-direction:column;gap:2px;min-width:100px}.client-detail-hero-staff-label{color:rgba(255,255,255,.6);font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.client-detail-hero-staff-name{color:rgba(255,255,255,.95);font-size:13px;font-weight:700}.client-detail-hero-actions{display:flex;gap:8px}.client-detail-hero-actions .btn{background:rgba(255,255,255,.15);border-color:rgba(255,255,255,.25);color:white}.client-detail-card{display:flex;flex:1 1;flex-direction:column;min-height:0}.client-detail-tabs{flex-shrink:0;overflow-x:auto}.client-detail-tabs .tab-item{background:transparent;border-left:0;border-right:0;border-top:0}.client-detail-tab-scroll{flex:1 1;min-height:0;overflow:auto}.client-detail-tab-content{padding:20px}.client-detail-section{margin-bottom:24px}.client-detail-section .info-section-header{align-items:center;background:linear-gradient(90deg,var(--primary-light),white);border-left:4px solid var(--primary);border-radius:0 var(--radius-sm) var(--radius-sm) 0;display:flex;gap:10px;margin-bottom:14px;padding:12px 18px}.client-detail-section .info-section-header.tax{background:linear-gradient(90deg,#fef2f2,white);border-left-color:var(--danger)}.client-detail-section .info-section-header.payroll{background:linear-gradient(90deg,#fef9e7,white);border-left-color:var(--warning)}.client-detail-section .info-section-header h3{color:var(--gray-800);font-size:13px;font-weight:800}.client-detail-info-grid{display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr))}.client-detail-info-grid .wide{grid-column:span 3}.client-detail-info-grid .wide2{grid-column:span 2}.client-detail-info-grid .info-item{background:var(--gray-50);border:1px solid var(--gray-200);border-radius:var(--radius);padding:12px 14px}.client-detail-info-grid .info-label{color:var(--gray-400);font-size:10.5px;font-weight:700;letter-spacing:.07em;margin-bottom:5px;text-transform:uppercase}.client-detail-info-grid .info-value{color:var(--gray-800);font-size:13.5px;font-weight:700;overflow-wrap:anywhere}.client-detail-info-grid .info-value.currency{color:var(--success)}.client-detail-info-grid .info-value.muted{color:var(--gray-500);font-weight:400}.client-detail-tax-grid{display:grid;grid-gap:16px;gap:16px;grid-template-columns:repeat(2,minmax(0,1fr))}.client-detail-tax-card{background:white;border:1.5px solid var(--gray-200);border-radius:var(--radius-lg);overflow:hidden}.client-detail-tax-card-header{align-items:center;color:white;display:flex;font-size:13px;font-weight:800;gap:8px;padding:10px 16px}.client-detail-tax-card-header.blue{background:linear-gradient(135deg,#2563eb,#1d4ed8)}.client-detail-tax-card-header.purple{background:linear-gradient(135deg,#7c3aed,#6d28d9)}.client-detail-tax-card-header.red{background:linear-gradient(135deg,#dc2626,#b91c1c)}.client-detail-tax-card-header.stone{background:linear-gradient(135deg,#44403c,#292524)}.client-detail-tax-card-header.cyan{background:linear-gradient(135deg,#0891b2,#0e7490)}.client-detail-tax-card-header.green{background:linear-gradient(135deg,#065f46,#047857)}.client-detail-tax-table{border-collapse:collapse;font-size:12.5px;width:100%}.client-detail-tax-table th{background:#f8f9fb;color:var(--gray-600);font-size:12px;font-weight:700;text-align:left;width:45%}.client-detail-tax-table td,.client-detail-tax-table th{border-bottom:1px solid var(--gray-200);padding:8px 14px}.client-detail-tax-table td{color:var(--gray-800);font-weight:500}.client-detail-tax-table tr:last-child td,.client-detail-tax-table tr:last-child th{border-bottom:0}.client-detail-trust-section-title{align-items:center;display:flex;gap:8px;margin-bottom:12px}.client-detail-trust-section-title h4{color:var(--gray-600);font-size:13px;font-weight:700;letter-spacing:.04em;margin:0}.client-detail-trust-section-title div{background:var(--gray-200);flex:1 1;height:1px}.client-detail-trust-grid{display:grid;grid-gap:10px;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr))}.client-detail-trust-card{align-items:center;background:#f8f9fb;border:1px solid var(--gray-200);border-left:4px solid #cbd5e1;border-radius:10px;box-shadow:0 2px 6px rgba(0,0,0,.05);display:flex;gap:8px;justify-content:space-between;padding:14px 16px}.client-detail-trust-card.active{background:linear-gradient(135deg,#f0faf4,#e6f7ee);border-color:#b2dfcc #b2dfcc #b2dfcc #22c55e}.client-detail-trust-card div{align-items:center;display:flex;gap:7px;min-width:0}.client-detail-trust-card strong{color:var(--gray-500);font-size:12px}.client-detail-trust-card.active strong{color:#166534}.client-detail-trust-card>span{align-items:center;background:#94a3b8;border-radius:999px;color:white;display:inline-flex;font-size:11px;font-weight:700;padding:2px 10px}.client-detail-trust-card.active>span{background:#22c55e}.client-detail-metric-row{align-items:stretch;display:flex;gap:16px}.client-detail-metric-card{border-radius:var(--radius-lg);color:white;flex:1 1;padding:20px 24px}.client-detail-metric-card.blue{background:linear-gradient(135deg,#1a6b8a,#2196f3)}.client-detail-metric-card.green{background:linear-gradient(135deg,#059669,#10b981)}.client-detail-metric-card.plain{background:#f8f9fb;border:1.5px solid #e2e8f0;color:#1e3a5f;padding:12px 18px}.client-detail-metric-card div{font-size:11px;font-weight:700;letter-spacing:.07em;margin-bottom:6px;opacity:.82;text-transform:uppercase}.client-detail-metric-card strong{font-size:28px;font-weight:800}.client-detail-metric-card.plain strong{font-size:18px}.client-detail-activity-toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;margin-bottom:14px}.client-detail-activity-toolbar-left{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.client-detail-activity-count{color:var(--gray-600);font-size:13px}.client-detail-activity-filter{background:white;border:1.5px solid var(--gray-200);border-radius:8px;color:var(--gray-700);font-family:inherit;font-size:12px;padding:6px 10px}.client-detail-activity-item{display:flex;gap:14px}.client-detail-activity-dot-col{align-items:center;display:flex;flex-direction:column;flex-shrink:0}.client-detail-activity-dot{align-items:center;border-radius:50%;display:flex;flex-shrink:0;font-size:16px;height:38px;justify-content:center;width:38px}.client-detail-activity-line{background:var(--gray-200);flex:1 1;margin-top:4px;min-height:16px;width:2px}.client-detail-activity-card{background:white;border:1.5px solid var(--gray-200);border-radius:12px;box-shadow:0 1px 4px rgba(15,23,42,.06);flex:1 1;margin-bottom:20px;padding:14px 16px}.client-detail-activity-head{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin-bottom:8px}.client-detail-activity-badge{border:1px solid;border-radius:999px;font-size:10.5px;font-weight:700;padding:2px 10px}.client-detail-activity-date{color:var(--gray-800);font-size:12px;font-weight:700}.client-detail-activity-staff{color:var(--gray-500);font-size:11.5px}.client-detail-activity-actions{display:flex;flex-shrink:0;gap:6px;margin-left:auto}.client-detail-activity-content{color:var(--gray-800);font-size:13px;line-height:1.7;white-space:pre-wrap}.client-detail-activity-video{align-items:center;display:flex;flex-wrap:wrap;gap:10px;margin-top:8px}.client-detail-activity-video a{align-items:center;background:#eff6ff;border:1px solid #93c5fd;border-radius:20px;color:#3b82f6;display:inline-flex;font-size:11.5px;gap:4px;padding:3px 10px;text-decoration:none;white-space:nowrap}.client-detail-activity-video span{color:#94a3b8;font-size:11px;word-break:break-all}.client-detail-confirm{background:white;border-radius:14px;box-shadow:0 20px 56px rgba(15,23,42,.28);max-width:92vw;padding:28px 28px 22px;text-align:center;width:360px}.client-detail-confirm-icon{font-size:32px;margin-bottom:12px}.client-detail-confirm-title{color:#0f172a;font-size:15px;font-weight:800;margin-bottom:6px}.client-detail-confirm-text{color:#64748b;font-size:12.5px;margin-bottom:22px}.client-detail-confirm-actions{display:flex;gap:10px;justify-content:center}@media (max-width:1100px){.client-detail-hero{flex-wrap:wrap}.client-detail-hero-staff{width:100%}}@media (max-width:900px){.client-detail-info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.client-detail-info-grid .wide,.client-detail-info-grid .wide2{grid-column:span 2}.client-detail-tax-grid,.client-detail-trust-grid{grid-template-columns:1fr}}@media (max-width:640px){.client-detail-page-body{padding:14px}.client-detail-hero{padding:20px}.client-detail-info-grid{grid-template-columns:1fr}.client-detail-info-grid .wide,.client-detail-info-grid .wide2{grid-column:span 1}.client-detail-metric-row{flex-direction:column}}