*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #0f1117;--surface: #1a1d27;--card: #22263a;--card2: #2a2f47;--border: rgba(255,255,255,.08);--text: #e8eaf0;--muted: #8c91a8;--accent: #6c8ff7;--green: #43d9a2;--red: #f07167;--amber: #fbbf24;--purple: #c084fc;--cyan: #22d3ee;--radius: 12px;--font: "Noto Sans JP","Hiragino Sans","Yu Gothic UI",sans-serif;--glow-accent: 0 0 20px rgba(108,143,247,.25);--glow-green: 0 0 20px rgba(67,217,162,.25);--glow-red: 0 0 20px rgba(240,113,103,.25);--ease-out: cubic-bezier(.16,1,.3,1)}html,body,#root{height:100%;background:var(--bg);color:var(--text);font-family:var(--font);font-size:14px}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#fff3}.app{display:flex;height:100vh;overflow:hidden}.sidebar{width:240px;min-width:240px;height:100vh;background:var(--surface);border-right:1px solid var(--border);display:flex;flex-direction:column;overflow:hidden;transition:width .25s var(--ease-out),min-width .25s var(--ease-out);position:relative}.sidebar-nav-scroll{flex:1;overflow-y:auto;overflow-x:hidden}.sidebar.collapsed{width:60px;min-width:60px}.sidebar.collapsed .nav-section-label,.sidebar.collapsed .nav-item span,.sidebar.collapsed .nav-item .badge,.sidebar.collapsed .logo-text,.sidebar.collapsed .logo-sub,.sidebar.collapsed .avatar-info{display:none}.sidebar.collapsed .sidebar-logo{justify-content:center;padding:16px 0}.sidebar.collapsed .logo-mark{margin:0}.sidebar.collapsed .nav-item{justify-content:center;padding:11px 0}.sidebar.collapsed .sidebar-footer{flex-shrink:0;border-top:1px solid var(--border);justify-content:center;padding:16px 0}.sidebar-logo{padding:18px 16px 14px;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:10px}.logo-mark{width:32px;height:32px;background:linear-gradient(135deg,var(--accent),#a78bfa);border-radius:9px;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:15px;color:#fff;flex-shrink:0;box-shadow:var(--glow-accent)}.logo-text{font-size:15px;font-weight:700;color:var(--text)}.logo-sub{font-size:10px;color:var(--muted);margin-top:1px}.sidebar-toggle{margin-left:auto;background:transparent;border:1px solid var(--border);border-radius:6px;color:var(--muted);cursor:pointer;padding:4px 6px;display:flex;align-items:center;transition:all .2s;flex-shrink:0}.sidebar-toggle:hover{background:var(--card);color:var(--text);border-color:#fff3}.nav-section{padding:10px 0 2px}.nav-section-label{font-size:9px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted);padding:0 16px 5px;transition:opacity .2s}.nav-item{display:flex;align-items:center;gap:10px;padding:9px 16px;cursor:pointer;font-size:13px;color:var(--muted);transition:all .18s;border-left:2px solid transparent;margin:1px 0;position:relative}.nav-item:hover{background:#ffffff0d;color:var(--text)}.nav-item.active{background:linear-gradient(90deg,#6c8ff726,#6c8ff70a);color:var(--accent);border-left-color:var(--accent)}.nav-item.active .nav-icon{filter:drop-shadow(0 0 6px rgba(108,143,247,.6))}.nav-icon{width:16px;height:16px;flex-shrink:0}.nav-item .badge{margin-left:auto;background:var(--red);color:#fff;font-size:10px;font-weight:700;padding:1px 6px;border-radius:10px}.sidebar.collapsed .nav-item[title]:hover:after{content:attr(title);position:absolute;left:64px;top:50%;transform:translateY(-50%);background:var(--card2);color:var(--text);font-size:12px;padding:5px 10px;border-radius:6px;border:1px solid var(--border);white-space:nowrap;z-index:100;pointer-events:none}.sidebar-footer{flex-shrink:0;margin-top:auto;padding:14px 16px;border-top:1px solid var(--border);display:flex;align-items:center;gap:10px}.avatar{width:32px;height:32px;border-radius:50%;background:var(--accent);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:#fff;flex-shrink:0}.avatar-info .name{font-size:13px;font-weight:600}.avatar-info .role{font-size:11px;color:var(--muted)}.main{flex:1;display:flex;flex-direction:column;overflow:hidden}.topbar{height:60px;min-height:60px;background:var(--surface);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 28px}.topbar-title{font-size:17px;font-weight:700}.topbar-right{display:flex;align-items:center;gap:12px}.icon-btn{width:36px;height:36px;border-radius:8px;border:1px solid var(--border);background:transparent;color:var(--muted);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .18s}.icon-btn:hover{background:var(--card);color:var(--text);border-color:#fff3;box-shadow:var(--glow-accent)}.content{flex:1;overflow-y:auto;padding:28px 32px 48px}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:20px;transition:transform .22s var(--ease-out),box-shadow .22s var(--ease-out),border-color .22s}.card:hover{transform:translateY(-3px);box-shadow:0 8px 32px #00000073,0 0 0 1px #6c8ff726;border-color:#6c8ff740}.card-title{font-size:13px;font-weight:600;color:var(--text);margin-bottom:4px}.card-sub{font-size:11px;color:var(--muted);margin-bottom:14px}.section-title{font-size:11px;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:var(--muted);padding-bottom:10px;border-bottom:1px solid var(--border);margin-bottom:16px}.kpi-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:14px 12px;text-align:center;transition:transform .22s var(--ease-out),box-shadow .22s var(--ease-out),border-color .22s,background .22s;cursor:default}.kpi-card:hover{transform:translateY(-5px) scale(1.03);box-shadow:0 12px 40px #0000008c,0 0 20px #6c8ff733;background:var(--card2);border-color:#6c8ff759}.kpi-card .kpi-member{font-size:11px;color:var(--muted);margin-bottom:6px;display:flex;align-items:center;justify-content:center;gap:4px}.kpi-card .kpi-value{font-size:22px;font-weight:700;text-shadow:0 0 20px currentColor}.kpi-card .kpi-unit{font-size:11px;color:var(--muted);margin-top:2px}.dot{width:8px;height:8px;border-radius:50%;display:inline-block}.card[style*="cursor:pointer"]:hover,.card[style*="cursor: pointer"]:hover{transform:translateY(-4px);box-shadow:0 10px 36px #00000080,0 0 0 1px #6c8ff733;border-color:#6c8ff74d}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:16px}.grid-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.grid-kpi{display:grid;grid-template-columns:repeat(8,1fr);gap:10px}.btn{padding:8px 16px;border-radius:8px;border:none;cursor:pointer;font-size:13px;font-weight:600;font-family:var(--font);transition:all .18s}.btn-primary{background:linear-gradient(135deg,var(--accent),#8b5cf6);color:#fff;box-shadow:0 2px 12px #6c8ff74d}.btn-primary:hover{background:linear-gradient(135deg,#5a7ef5,#7c3aed);transform:translateY(-1px);box-shadow:0 4px 20px #6c8ff780}.btn-ghost{background:transparent;color:var(--muted);border:1px solid var(--border)}.btn-ghost:hover{background:#ffffff0f;color:var(--text);border-color:#ffffff2e}.btn-sm{padding:5px 12px;font-size:12px}.btn-danger{background:#f0716726;color:var(--red);border:1px solid rgba(240,113,103,.3)}.btn-danger:hover{background:#f0716740}.badge{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:5px;font-size:11px;font-weight:600}.badge-accent{background:#6c8ff726;color:#a5b9ff;border:1px solid rgba(108,143,247,.3)}.badge-green{background:#43d9a226;color:#43d9a2;border:1px solid rgba(67,217,162,.3)}.badge-red{background:#f0716726;color:#f07167;border:1px solid rgba(240,113,103,.3)}.badge-amber{background:#fbbf2426;color:#fbbf24;border:1px solid rgba(251,191,36,.3)}.badge-muted{background:#8c91a826;color:#8c91a8;border:1px solid rgba(140,145,168,.2)}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse}thead th{font-size:11px;font-weight:600;color:var(--muted);text-align:left;padding:10px 12px;border-bottom:1px solid var(--border);white-space:nowrap}tbody td{padding:11px 12px;border-bottom:1px solid rgba(255,255,255,.04);font-size:13px;transition:background .15s}tbody tr:last-child td{border-bottom:none}tbody tr{transition:background .15s}tbody tr:hover td{background:#6c8ff70f}.progress-wrap{display:flex;align-items:center;gap:8px}.progress-bg{flex:1;height:6px;background:#ffffff14;border-radius:3px;overflow:hidden;min-width:60px}.progress-fill{height:100%;border-radius:3px;transition:width .4s var(--ease-out)}.progress-pct{font-size:11px;color:var(--muted);width:36px;text-align:right}.filter-bar{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:12px 16px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:16px}.filter-label{font-size:11px;color:var(--muted)}.chip{display:inline-flex;align-items:center;gap:5px;padding:5px 12px;border-radius:20px;border:1px solid var(--border);background:var(--card);color:var(--text);cursor:pointer;font-size:12px;font-family:var(--font);transition:all .18s;-webkit-user-select:none;user-select:none}.chip:hover{border-color:#6c8ff766;box-shadow:0 0 8px #6c8ff726}.chip.off{opacity:.3}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000bf;z-index:100;display:flex;align-items:center;justify-content:center;animation:fadeIn .15s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal{background:var(--card);border:1px solid rgba(255,255,255,.12);border-radius:16px;width:min(92vw,880px);max-height:90vh;overflow-y:auto;padding:28px;animation:slideUp .2s var(--ease-out)}@keyframes slideUp{0%{transform:translateY(16px);opacity:0}to{transform:none;opacity:1}}.modal-tabs{display:flex;gap:2px;margin-bottom:20px;border-bottom:1px solid var(--border);padding-bottom:0}.modal-tab{padding:8px 16px;border-radius:8px 8px 0 0;border:none;background:transparent;color:var(--muted);cursor:pointer;font-size:13px;font-family:var(--font);border-bottom:2px solid transparent;margin-bottom:-1px;transition:all .18s}.modal-tab:hover{color:var(--text);background:#ffffff08}.modal-tab.active{color:var(--accent);border-bottom-color:var(--accent);background:#6c8ff70f}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-row{display:flex;flex-direction:column;gap:5px}.form-row label{font-size:11px;color:var(--muted);font-weight:600;text-transform:uppercase;letter-spacing:.5px}.form-row input,.form-row select,.form-row textarea{background:var(--surface);border:1px solid var(--border);border-radius:8px;color:var(--text);padding:9px 12px;font-size:13px;font-family:var(--font);outline:none;transition:border-color .18s,box-shadow .18s}.form-row input:focus,.form-row select:focus,.form-row textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px #6c8ff71f}.form-row textarea{resize:vertical;min-height:80px}.health-good{background:#43d9a226;color:#43d9a2;border:1px solid rgba(67,217,162,.3);padding:3px 10px;border-radius:5px;font-size:11px;font-weight:600}.health-caution{background:#fbbf2426;color:#fbbf24;border:1px solid rgba(251,191,36,.3);padding:3px 10px;border-radius:5px;font-size:11px;font-weight:600}.health-danger{background:#f0716726;color:#f07167;border:1px solid rgba(240,113,103,.3);padding:3px 10px;border-radius:5px;font-size:11px;font-weight:600}.rank-badge{width:24px;height:24px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:700}.rank-gold{background:#fbbf2433;color:#fbbf24}.rank-silver{background:#9ca3af33;color:#9ca3af}.rank-bronze{background:#b4785033;color:#cd7f32}.rank-other{background:var(--surface);color:var(--muted)}.alert-banner{display:flex;align-items:center;gap:10px;padding:10px 16px;border-radius:8px;margin-bottom:16px;font-size:13px}.alert-red{background:#f071671f;border:1px solid rgba(240,113,103,.3);color:#f07167}.alert-amber{background:#fbbf241f;border:1px solid rgba(251,191,36,.3);color:#fbbf24}.alert-accent{background:#6c8ff71f;border:1px solid rgba(108,143,247,.3);color:#a5b9ff}.flex{display:flex}.flex-between{display:flex;align-items:center;justify-content:space-between}.flex-center{display:flex;align-items:center}.gap-8{gap:8px}.gap-12{gap:12px}.gap-16{gap:16px}.mt-8{margin-top:8px}.mt-16{margin-top:16px}.mt-24{margin-top:24px}.mb-16{margin-bottom:16px}.mb-24{margin-bottom:24px}.text-muted{color:var(--muted)}.text-sm{font-size:12px}.text-xs{font-size:11px}.font-bold{font-weight:700}.font-semibold{font-weight:600}.w-full{width:100%}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.divider{border:none;border-top:1px solid var(--border);margin:16px 0}.team-table{width:100%;border-collapse:collapse}.team-table th{font-size:11px;color:var(--muted);padding:8px 10px;text-align:left;border-bottom:1px solid var(--border)}.team-table td{padding:10px;border-bottom:1px solid rgba(255,255,255,.04)}.team-table tr:last-child td{border-bottom:none}.team-table tr:hover td{background:#ffffff05}.team-input{background:var(--surface);border:1px solid var(--border);border-radius:6px;color:var(--text);padding:6px 10px;font-size:12px;font-family:var(--font);outline:none;transition:border-color .18s;width:100%}.team-input:focus{border-color:var(--accent)}.bottom-nav{display:none;position:fixed;bottom:0;left:0;right:0;background:var(--surface);border-top:1px solid var(--border);z-index:200;padding:0 env(safe-area-inset-right,0) env(safe-area-inset-bottom,0) env(safe-area-inset-left,0)}.bottom-nav-inner{display:flex;justify-content:space-around;align-items:center;height:56px;padding:0 4px}.bottom-nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;flex:1;padding:6px 2px;cursor:pointer;border:none;background:transparent;color:var(--muted);font-size:10px;font-family:var(--font);font-weight:500;letter-spacing:.2px;transition:color .2s,transform .15s;height:56px;position:relative;-webkit-tap-highlight-color:transparent}.bottom-nav-item:active{transform:scale(.92)}.bottom-nav-item.active{color:var(--accent)}.bottom-nav-item.active svg{filter:drop-shadow(0 0 6px rgba(108,143,247,.6))}.bottom-nav-item .nav-badge{position:absolute;top:4px;right:calc(50% - 14px);width:8px;height:8px;background:var(--red);border-radius:50%}.mobile-header{display:none;background:var(--surface);border-bottom:1px solid var(--border);z-index:100;padding:0 16px;height:52px;align-items:center;justify-content:space-between}.mobile-header-title{font-size:16px;font-weight:700}.mobile-menu-overlay{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;z-index:300;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.mobile-menu-panel{position:absolute;left:0;top:0;bottom:0;width:260px;background:var(--surface);overflow-y:auto;padding-bottom:40px}@media (max-width: 768px){html{height:100%;overflow:hidden}body{height:100%;overflow:hidden;position:fixed;width:100%}.app{height:100%;width:100%;overflow:hidden;position:fixed;top:0;left:0;right:0;bottom:0;flex-direction:column}.sidebar,.topbar{display:none!important}.mobile-header{display:flex;position:fixed;top:0;left:0;right:0;z-index:100;height:calc(52px + env(safe-area-inset-top,0px));padding-top:env(safe-area-inset-top,0px)}.main{position:fixed;top:calc(52px + env(safe-area-inset-top,0px));bottom:calc(56px + env(safe-area-inset-bottom,0px));left:0;right:0;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain}.content{padding:14px 14px 20px;min-height:100%;box-sizing:border-box;overflow-x:hidden}.content>*{max-width:100%;box-sizing:border-box}.bottom-nav{display:block;position:fixed;bottom:0;left:0;right:0;z-index:200}.card{max-width:100%;box-sizing:border-box;overflow-x:hidden}.mobile-header{display:flex}.table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%}.card table{overflow-x:auto}.card:has(.table-wrap){overflow-x:hidden}table{min-width:560px;font-size:12px;width:max-content}th,td{padding:7px 8px!important;white-space:nowrap}select,input[type=date]{min-width:0;flex-shrink:1;font-size:12px}.btn-sm{font-size:11px;padding:5px 8px;white-space:nowrap}.grid-4{grid-template-columns:1fr 1fr!important}.card{width:100%;box-sizing:border-box}.grid-2,.grid-3,.grid-4{grid-template-columns:1fr!important}.grid-6{grid-template-columns:repeat(3,1fr)!important}.card{border-radius:10px;padding:14px}.table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}table{font-size:12px;min-width:500px}th,td{padding:8px 10px!important;white-space:nowrap}.modal-overlay{top:calc(52px + env(safe-area-inset-top,0px))!important;bottom:calc(44px + env(safe-area-inset-bottom,0px))!important;left:0!important;right:0!important;padding:8px 10px!important;align-items:flex-start!important;overflow-y:hidden!important}.modal{width:100%!important;max-width:100%!important;height:100%!important;max-height:100%!important;border-radius:14px!important;padding:0!important;overflow:hidden!important;display:flex!important;flex-direction:column!important}.modal-header{flex-shrink:0!important;padding:13px 15px 11px!important}.modal-body{flex:1!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch!important;padding:13px 15px!important}.modal>.modal-tabs{flex-shrink:0!important;flex-grow:0!important;overflow-x:auto!important;overflow-y:hidden!important;-webkit-overflow-scrolling:touch!important}.modal>.modal-body{flex:1!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch!important;padding:10px 14px!important}.modal>div:not(.modal-header):not(.modal-footer):not(.modal-footer-between):not(.modal-tabs){flex:1!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch!important;min-height:0!important}.modal-footer,.modal-footer-between{flex-shrink:0!important;position:sticky!important;bottom:0!important;padding:10px 14px!important;background:var(--surface)!important;border-top:1px solid var(--border)!important;z-index:10!important;margin-top:0!important;display:flex!important;justify-content:flex-end!important;gap:8px!important}.form-grid{grid-template-columns:1fr!important}.form-grid .form-row[style*="span 2"]{grid-column:span 1!important}.btn{min-height:40px;padding:9px 14px;font-size:13px}.btn-sm{min-height:34px;padding:7px 12px;font-size:12px}.icon-btn{width:40px;height:40px}.kpi-card{padding:12px!important}.kpi-value{font-size:20px!important}.filter-bar{flex-wrap:wrap;gap:6px}.chip{font-size:11px;padding:4px 10px}.section-title{font-size:12px}.recharts-wrapper{font-size:10px!important}.alert-banner{font-size:12px;padding:9px 12px}.login-container{padding:16px!important}.quick-grid{grid-template-columns:1fr 1fr!important;gap:8px!important}.stamp-btn{padding:12px 6px!important}.mobile-menu-panel .nav-item{padding:12px 18px;font-size:14px}.mobile-menu-panel .nav-section-label{font-size:10px}.card-title{font-size:13px}.card-sub{font-size:11px}}@media (max-width: 480px){.content{padding:10px 12px}.grid-6{grid-template-columns:repeat(2,1fr)!important}table{font-size:11px}}@media print{.sidebar,.topbar,.mobile-header,.bottom-nav,.icon-btn,.filter-bar,.no-print,.btn,button:not(.print-btn),.chip,.badge{display:none!important}html,body{background:#fff!important;color:#111!important;margin:0;padding:0}.app{display:block!important}.main{margin:0!important;padding:0!important;width:100%!important}.content{padding:6px 8px!important;width:100%!important;max-width:100%!important}.card{border:1px solid #ccc!important;background:#fff!important;color:#111!important;box-shadow:none!important;margin-bottom:8px!important;break-inside:auto!important;page-break-inside:auto!important}.card-title{color:#111!important;font-size:11pt!important}.card-sub{color:#555!important;font-size:9pt!important}.section-title{color:#111!important;border-color:#ccc!important;font-size:10pt!important}.grid-2{grid-template-columns:1fr 1fr!important}.grid-3{grid-template-columns:1fr 1fr 1fr!important}.grid-4{grid-template-columns:1fr 1fr 1fr 1fr!important}*{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}table{font-size:9pt!important;border-collapse:collapse!important;width:100%!important}th,td{padding:4px 6px!important;border:1px solid #ddd!important;color:#111!important}thead{background:#f5f5f5!important}svg{max-width:100%!important}.recharts-wrapper{overflow:visible!important}.progress-bg{background:#eee!important}@page{margin:12mm 10mm;size:A4 landscape}@page :first{margin-top:15mm}.card{page-break-inside:avoid}.section-title{page-break-after:avoid}.print-only{display:block!important}}.print-only{display:none}.sub-menu-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:350;display:flex;align-items:flex-end;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.sub-menu-panel{width:100%;background:var(--surface);border-radius:20px 20px 0 0;padding:16px 16px calc(16px + env(safe-area-inset-bottom,0));border-top:1px solid var(--border)}.sub-menu-title{font-size:11px;font-weight:700;color:var(--muted);text-align:center;margin-bottom:14px;letter-spacing:1px;text-transform:uppercase}.sub-menu-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.sub-menu-card{padding:16px 12px;background:#ffffff0d;border:1px solid var(--border);border-radius:14px;display:flex;flex-direction:column;align-items:center;gap:8px;cursor:pointer;transition:all .18s;font-family:var(--font);text-decoration:none}.sub-menu-card:active{transform:scale(.97);background:#ffffff1a}.sub-menu-card .icon-wrap{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center}.sub-menu-card .card-label{font-size:13px;font-weight:700;color:var(--text)}.sub-menu-card .card-sub{font-size:10px;color:var(--muted)}.menu-card-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;padding:12px 16px}.menu-card{padding:14px 10px;background:#ffffff0a;border:1px solid var(--border);border-radius:14px;display:flex;flex-direction:column;align-items:center;gap:7px;cursor:pointer;transition:all .18s}.menu-card:active{transform:scale(.96);background:#ffffff17}.menu-card.active{border-color:var(--accent);background:#6c8ff71a}.menu-card .mc-icon{width:38px;height:38px;border-radius:10px;display:flex;align-items:center;justify-content:center}.menu-card .mc-label{font-size:12px;font-weight:700;color:var(--text);text-align:center;line-height:1.3}.project-hours-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}@media (max-width: 768px){.project-hours-grid{grid-template-columns:1fr}}@media (max-width: 768px){.new-deal-fab{display:flex!important;bottom:calc(64px + env(safe-area-inset-bottom,0px))!important}body.modal-open .new-deal-fab{display:none!important}}@media (max-width: 768px){input,input[type=text],input[type=number],input[type=date],input[type=time],input[type=email],input[type=password],input[type=search],input[type=tel],select,textarea{font-size:16px!important;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}.modal input,.modal select,.modal textarea{font-size:16px!important}}@media (max-width: 768px){.modal-tabs{overflow-x:auto!important;-webkit-overflow-scrolling:touch!important;flex-wrap:nowrap!important;gap:0!important;padding-bottom:0;margin-bottom:12px!important}.modal-tab{font-size:10px!important;padding:6px 8px!important;white-space:nowrap!important;flex-shrink:0!important;letter-spacing:0!important}.modal-footer,.modal-footer-between{justify-content:flex-end!important;gap:8px!important}.modal-footer .btn,.modal-footer-between .btn{font-size:13px!important;padding:10px 20px!important;min-width:0!important;width:auto!important;flex:none!important}.modal .form-grid{grid-template-columns:1fr!important;gap:10px!important}.modal .form-row{gap:4px!important}.modal .form-row label{font-size:11px!important;font-weight:600!important;color:var(--muted)}.modal .form-row input,.modal .form-row select,.modal .form-row textarea{font-size:16px!important;padding:11px 12px!important;min-height:46px!important;width:100%!important;box-sizing:border-box!important}.modal .form-row textarea{min-height:80px!important}.modal .form-row[style*="span 2"],.modal [style*="gridColumn.*span 2"]{grid-column:span 1!important}}@media (min-width: 769px){.modal-footer-between{flex-direction:row!important;align-items:center!important;justify-content:space-between!important}.modal-footer-between>div{flex-wrap:nowrap!important}}@media (max-width: 768px){.modal-overlay{position:fixed!important;top:calc(52px + env(safe-area-inset-top,0px))!important;bottom:calc(56px + env(safe-area-inset-bottom,0px))!important;left:0!important;right:0!important;padding:8px!important;align-items:flex-start!important;overflow-y:hidden!important}.modal{width:100%!important;max-width:100%!important;height:100%!important;max-height:100%!important;border-radius:14px!important;padding:0!important;overflow:hidden!important;display:flex!important;flex-direction:column!important;flex-shrink:0!important}.modal-header{flex-shrink:0!important;padding:14px 16px 12px!important;display:flex!important;align-items:flex-start!important;justify-content:space-between!important}.modal>.modal-tabs{flex-shrink:0!important;overflow-x:auto!important;overflow-y:hidden!important;padding:0 14px!important}.modal>div:not(.modal-header):not(.modal-footer):not(.modal-footer-between):not(.modal-tabs){flex:1!important;overflow-y:auto!important;overflow-x:hidden!important;-webkit-overflow-scrolling:touch!important;padding:12px 14px!important;min-height:0!important;box-sizing:border-box!important}.modal .form-grid{grid-template-columns:1fr!important;width:100%!important;box-sizing:border-box!important}.modal .form-row{width:100%!important;box-sizing:border-box!important;min-width:0!important}.modal .form-row input,.modal .form-row select,.modal .form-row textarea{width:100%!important;box-sizing:border-box!important;font-size:16px!important;min-height:46px!important;padding:10px 12px!important}.modal-footer{flex-shrink:0!important;padding:10px 14px!important;display:flex!important;justify-content:flex-end!important;gap:8px!important;background:var(--surface)!important;border-top:1px solid var(--border)!important}.modal-footer-between{flex-shrink:0!important;padding:10px 14px!important;display:flex!important;flex-direction:column!important;gap:8px!important;background:var(--surface)!important;border-top:1px solid var(--border)!important}.modal-footer-between>div{display:flex!important;gap:7px!important;flex-wrap:wrap!important}.modal-footer-between>div:last-child{justify-content:flex-end!important}.modal-footer .btn,.modal-footer-between .btn{height:44px!important;min-height:44px!important;padding:0 18px!important;font-size:14px!important;width:auto!important;flex:none!important;white-space:nowrap!important}}@media (min-width: 769px){.modal-footer-between{display:flex;flex-direction:row;align-items:center;justify-content:space-between;padding:14px 22px;border-top:1px solid var(--border);gap:12px}.modal-footer-between>div{display:flex;gap:8px;align-items:center}}@media (max-width: 768px){.card{overflow-x:auto!important}.card table,.table-wrap table{min-width:520px!important;width:max-content!important;font-size:11px!important}.main,.content{overflow-x:hidden!important}.card{-webkit-overflow-scrolling:touch!important}}@media (max-width: 768px){.card table{min-width:480px;font-size:11px}.card table th,.card table td{padding:6px 8px!important;white-space:nowrap}.card [style*="fontSize:28"]{font-size:22px!important}.card input[type=number]{width:72px!important}}.split-view-grid{grid-template-columns:1fr 1fr}@media (max-width: 768px){.split-view-grid{grid-template-columns:1fr}.split-view-grid>div:first-child{border-right:none!important;border-bottom:1px solid var(--border);padding-bottom:12px;margin-bottom:12px}}
