*{margin:0;padding:0}:root{--bg:#0f1216;--panel:#1a1f27;--border:#2a313c;--text:#e6e9ef;--muted:#93a0b3;--accent:#2563eb;--danger:#e5484d}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0;font-family:-apple-system,BlinkMacSystemFont,Hiragino Sans,Noto Sans JP,sans-serif}.app-shell{min-height:100vh}.app-header{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:12px 24px;padding:16px 24px;display:flex}.app-header h1{margin:0;font-size:18px}.app-header nav{flex-wrap:wrap;flex:1;order:3;gap:8px;width:100%;min-width:0;display:flex}.app-header nav a{color:var(--muted);white-space:nowrap;border-radius:6px;padding:6px 10px;font-size:14px;text-decoration:none}.app-header nav a.active{color:var(--text);background:var(--panel)}.logout-btn{order:2;margin-left:auto}.app-main{max-width:1000px;margin:0 auto;padding:24px}.table-wrap{-webkit-overflow-scrolling:touch;overflow-x:auto}@media (width<=640px){.app-header{gap:8px 16px;padding:12px 16px}.app-header nav{order:3;gap:4px}.app-header nav a{padding:6px 8px;font-size:13px}.app-main{padding:16px}.kpi-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px}.kpi-card{padding:12px}.kpi-value{font-size:18px}.panel{padding:14px}.bs-form,.txn-form{max-width:none}input,select{font-size:16px}.auth-form{width:100%;padding:24px}}.panel{background:var(--panel);border:1px solid var(--border);border-radius:12px;margin-bottom:20px;padding:20px}.panel h2{margin-top:0;font-size:16px}.kpi-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;margin-bottom:20px;display:grid}.kpi-card{background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:16px}.kpi-label{color:var(--muted);margin-bottom:6px;font-size:12px}.kpi-value{font-size:22px;font-weight:600}.toolbar{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:16px;display:flex}.toolbar h2{margin:0 auto 0 0}label{color:var(--muted);flex-direction:column;gap:4px;font-size:13px;display:flex}input,select{background:var(--bg);border:1px solid var(--border);color:var(--text);border-radius:6px;padding:8px 10px;font-size:14px}fieldset{border:1px solid var(--border);border-radius:8px;margin-bottom:14px}legend{color:var(--muted);padding:0 6px;font-size:13px}fieldset label{margin-bottom:10px}.bs-form,.txn-form{flex-direction:column;gap:8px;max-width:480px;display:flex}button{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:6px;width:fit-content;padding:10px 16px;font-size:14px}button:disabled{opacity:.6;cursor:default}button.link{color:var(--muted);background:0 0;padding:0;text-decoration:underline}.table{border-collapse:collapse;width:100%;min-width:480px;font-size:14px}.table th,.table td{text-align:left;border-bottom:1px solid var(--border);padding:8px 10px}.table th{color:var(--muted);font-weight:500}.error{color:var(--danger);font-size:13px}.auth-page{justify-content:center;align-items:center;min-height:100vh;padding:16px;display:flex}.auth-form{background:var(--panel);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:12px;width:320px;padding:32px;display:flex}.auth-form h1{margin:0;font-size:18px}.subtitle{color:var(--muted);margin:0 0 8px;font-size:13px}.google-login-btn{color:#1f1f1f;background:#fff;border-radius:6px;justify-content:center;align-items:center;padding:10px 16px;font-size:14px;font-weight:500;text-decoration:none;display:flex}.google-login-btn:hover{background:#f5f5f5}
