:root{color:#1c2740;background:#eef3f0;font-family:Pretendard,Apple SD Gothic Neo,sans-serif;font-size:15px;line-height:1.5}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}h1,h2,h3,p{margin:0}.login{min-height:100vh;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:40px;padding:48px 8vw;background:#eef3f0}.kicker{display:inline-block;margin-bottom:22px;padding:6px 12px;border-radius:999px;background:#e3f3ea;color:#147a55;font-size:12px;font-weight:700;letter-spacing:.04em}.login h1{font-size:44px;line-height:1.25;letter-spacing:-.04em;font-weight:800}.login .sub{margin-top:18px;color:#667085}.login .points{margin-top:36px;display:grid;gap:16px;color:#3d4a5c}.card{background:#fff;border-radius:22px;padding:42px 40px 28px;box-shadow:0 12px 40px #1827200f}.brand{display:grid;justify-items:center;gap:8px;margin-bottom:28px}.brand strong{font-size:20px;letter-spacing:-.03em}.brand span{color:#8b95a5;font-size:11px;letter-spacing:.08em}.card h2{font-size:22px;letter-spacing:-.03em}.hint{margin:8px 0 18px;color:#667085;font-size:14px}.field{display:grid;gap:7px;margin-bottom:14px;font-size:13px;font-weight:650;color:#243044}.field input,.field textarea,.cell,.replybox textarea,.note textarea{width:100%;border:1px solid #d3e2da;border-radius:12px;padding:12px 14px;background:#f7fbf8;font-weight:500;transition:border-color .15s,box-shadow .15s,background .15s}.field textarea,.replybox textarea{min-height:96px;resize:vertical;line-height:1.55}.field input:focus,.field textarea:focus,.cell:focus,.replybox textarea:focus,.note textarea:focus{outline:none;border-color:#0f6b52;background:#fff;box-shadow:0 0 0 4px #0f6b521f}input.num{min-width:96px;text-align:right;font-variant-numeric:tabular-nums;letter-spacing:-.02em}.replybox{display:grid;grid-template-columns:1fr 132px;gap:10px;align-items:stretch;margin-top:10px}.replybox .primary{height:100%;margin:0;width:100%}.note textarea{margin-top:8px;color:#243044;background:#fff}.entry{border:1px solid #e4eee8;border-radius:16px;padding:14px 16px 6px;margin-top:12px;background:#fcfefd}.actions{display:flex;gap:8px;align-items:center;margin:8px 0 14px}.pass{display:grid;grid-template-columns:1fr auto;gap:8px}.ghost,.primary,.texty{border:0;border-radius:10px}.ghost{background:#fff;border:1px solid #d7e0db;padding:0 14px}.primary{width:100%;margin-top:6px;padding:14px 16px;background:#0f6b52;color:#fff;font-weight:750}.primary.slim{width:auto;margin:0}.texty{background:transparent;color:#0f6b52;font-weight:700;padding:0}.fine{margin-top:12px;color:#8b95a5;font-size:12px}.row{display:flex;gap:8px;flex-wrap:wrap;align-items:end}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:12px}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.shell{min-height:100vh;display:grid;grid-template-columns:232px 1fr;background:#f4f7f5}.side{background:#fff;border-right:1px solid #e6eeea;padding:22px 14px;display:flex;flex-direction:column;gap:4px}.side .logo{padding:6px 10px 16px}.side .logo small{display:block;margin-top:8px;color:#8b95a5;font-size:11px;letter-spacing:.12em}.side-company{margin:0 4px 14px;padding:12px;border-radius:14px;background:#f4faf7;border:1px solid #dceee4;display:grid;gap:8px}.side-company-label{font-size:12px;font-weight:700;color:#0f6b52;letter-spacing:-.02em}.side-company-locked{border:1px solid #d3e2da;border-radius:12px;padding:12px 14px;background:#fff;font-weight:650;color:#1c2740}.side-company-hint{margin:0;color:#8b95a5;font-size:11px;line-height:1.4}.navbtn{text-align:left;border:0;background:transparent;border-radius:10px;padding:11px 12px;color:#3d4a5c}.navbtn.on{background:#e7f4ee;color:#0f6b52;font-weight:750}.side .logout{margin-top:auto}.main{padding:28px 32px 48px}.top{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.top h1{font-size:30px;letter-spacing:-.04em}.top p{margin-top:6px;color:#667085}.top-meta{display:grid;gap:8px;justify-items:end}.company-chip{display:inline-flex;align-items:center;border-radius:999px;padding:6px 12px;background:#e7f4ee;color:#0f6b52;font-size:12px;font-weight:700}.badge{color:#3d8f6e;font-size:13px}.switch{min-width:280px;background:#fff;border-radius:16px;padding:16px 18px;display:flex;justify-content:space-between;gap:12px;align-items:center;margin:16px 0}.switch-pickers{width:min(520px,60%);display:flex;gap:8px;justify-content:flex-end}.switch-pickers .picker{width:248px;flex:0 1 248px}.picker{position:relative;width:100%;min-width:0}.picker-btn{width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;text-align:left;border:1px solid #d3e2da;border-radius:12px;padding:12px 16px;background:#f7fbf8;font-weight:560;color:#1c2740}.picker-btn>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.picker-caret{flex:0 0 18px;width:18px;height:18px;margin-right:2px;display:grid;place-items:center;color:#5c6b78}.picker.open .picker-caret{transform:rotate(180deg);color:#0f6b52}.picker.open .picker-btn,.picker-btn:focus-visible{outline:none;border-color:#0f6b52;background:#fff;box-shadow:0 0 0 4px #0f6b521f}.picker-btn:disabled{opacity:.55;cursor:default}.picker-menu{position:fixed;z-index:40;margin:0;padding:6px;list-style:none;background:#fff;border:1px solid #d7e6de;border-radius:14px;box-shadow:0 16px 36px #18272024;max-height:280px;overflow:auto;animation:picker-drop .14s ease}.picker-menu button{width:100%;text-align:left;border:0;border-radius:10px;padding:10px 12px;background:transparent;font-weight:550;color:#1c2740}.picker-menu button:hover{background:#eef7f2}.picker-menu button.on{background:#e7f4ee;color:#0f6b52;font-weight:700}@keyframes picker-drop{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}.filters>.picker{flex:0 1 240px;min-width:200px}.panel{overflow-x:auto;background:#fff;border:1px solid #e6eeea;border-radius:18px;padding:22px 22px 18px;margin-top:12px;box-shadow:0 8px 24px #18272008}.panel>h3{font-size:18px;letter-spacing:-.03em}.panel>h3+.muted{margin:6px 0 16px}.kpi{background:#fff;border:1px solid #e6eeea;border-radius:16px;padding:18px 18px 16px;box-shadow:0 6px 18px #18272008}.kpi b{display:block;margin:8px 0 2px;font-size:28px;letter-spacing:-.04em}.kpi span,.muted{color:#8b95a5;font-size:13px}table{width:100%;border-collapse:collapse;font-size:14px}th,td{text-align:left;padding:12px 8px;border-bottom:1px solid #eef2f0}th{color:#8b95a5;font-weight:600}tr.pick{background:#f3faf6}.filters{display:flex;gap:10px;margin:14px 0;align-items:end;flex-wrap:wrap}.filters .field{margin:0;min-width:180px}.pill{display:inline-block;background:#f4ecda;color:#8a6420;border-radius:999px;padding:4px 10px;font-size:12px}.company-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.split{display:grid;grid-template-columns:1.1fr .9fr;gap:12px}.note{background:#f7f3ea;border-radius:12px;padding:12px 14px;color:#6d5a32;font-size:13px}.save{color:#0f6b52;font-size:13px}.form-card{margin:4px 0 22px;padding:18px;border-radius:16px;background:linear-gradient(180deg,#f7fbf8,#f3f8f5);border:1px solid #dceee4}.form-card .grid2{gap:14px}.form-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.form-actions .primary.slim{min-width:128px;padding:12px 18px;border-radius:12px}.ghost.slim{padding:11px 14px;border-radius:12px;font-weight:650}.chip-field{grid-column:1 / -1;margin-bottom:0}.chip-field>span{display:block;margin-bottom:10px}.chip-grid{display:flex;flex-wrap:wrap;gap:8px}.chip-toggle{position:relative;display:inline-flex;align-items:center;gap:8px;margin:0;padding:10px 14px;border-radius:999px;border:1px solid #d3e2da;background:#fff;color:#3d4a5c;font-size:13px;font-weight:650;cursor:pointer;transition:border-color .15s,background .15s,color .15s,box-shadow .15s;-webkit-user-select:none;user-select:none}.chip-toggle input{position:absolute;opacity:0;pointer-events:none}.chip-toggle:hover{border-color:#0f6b52;color:#0f6b52}.chip-toggle.on{background:#e7f4ee;border-color:#0f6b52;color:#0f6b52;box-shadow:0 0 0 3px #0f6b521a}.chip-toggle .mark{width:16px;height:16px;border-radius:999px;border:1.5px solid #b7cdc2;display:grid;place-items:center;font-size:10px;line-height:1;color:transparent;background:#fff;flex:0 0 auto}.chip-toggle.on .mark{border-color:#0f6b52;background:#0f6b52;color:#fff}.alert-error{margin:0 0 14px;padding:10px 12px;border-radius:12px;background:#fff1f0;border:1px solid #f3c1bc;color:#b42318;font-size:13px;font-weight:600}.account-table-wrap{overflow-x:auto;border:1px solid #e6eeea;border-radius:14px;background:#fff}.account-table{margin:0}.account-table th{background:#f7faf8;padding:13px 14px;font-size:12px;letter-spacing:-.01em}.account-table td{padding:14px;vertical-align:middle}.account-table tr:last-child td{border-bottom:0}.account-table tbody tr:hover{background:#f8fcfa}.person-name{display:flex;align-items:center;gap:8px;font-weight:700;letter-spacing:-.02em}.role-badge{display:inline-flex;align-items:center;border-radius:999px;padding:4px 10px;font-size:12px;font-weight:700;background:#eef2f0;color:#4a5565}.role-badge.ceo{background:#e7f4ee;color:#0f6b52}.role-badge.director{background:#eaf1ff;color:#3558c7}.role-badge.manager{background:#fff4e5;color:#9a5b00}.role-badge.employee{background:#eef2f0;color:#4a5565}.role-badge.support{background:#f3eefc;color:#6b46c1}.dept-tags{display:flex;flex-wrap:wrap;gap:6px}.dept-tag{display:inline-flex;align-items:center;border-radius:999px;padding:4px 10px;background:#f4faf7;border:1px solid #dceee4;color:#0f6b52;font-size:12px;font-weight:650}.dept-tag.empty{background:#f5f6f7;border-color:#e5e7eb;color:#8b95a5}.row-actions{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}.row-actions .ghost.slim{padding:7px 11px;font-size:12px}.row-actions .danger{color:#b42318;border-color:#f0c7c2}.row-actions .danger:hover{background:#fff1f0}.list-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin:4px 0 12px}.list-head h4{margin:0;font-size:15px;letter-spacing:-.02em}.navbtn:hover{background:#f4faf7}.navbtn.on:hover{background:#e7f4ee}.primary:hover{filter:brightness(1.05)}.primary:disabled,.ghost:disabled,.texty:disabled{opacity:.55;cursor:default;filter:none}.switch{border:1px solid #e6eeea;box-shadow:0 6px 18px #18272008}@media(max-width:960px){.login,.shell,.split,.grid3,.grid2{grid-template-columns:1fr}.login h1{font-size:34px}.side{border-right:0;border-bottom:1px solid #e6eeea}.switch{align-items:stretch;flex-direction:column}.switch-pickers{width:100%;flex-direction:column}.switch-pickers .picker{width:100%;flex-basis:auto}}
