:root{--bg:#f7f7f5;--panel:#ffffff;--line:#e2e2df;--text:#1f2321;--muted:#6b7168;--accent:#2f6e50;--accent-contrast:#ffffff;--danger:#b3432f;--radius:6px}*{box-sizing:border-box}body,html{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:-apple-system,Segoe UI,Malgun Gothic,Apple SD Gothic Neo,sans-serif;font-size:14px;line-height:1.5}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}.shell{display:flex;min-height:100vh}.nav{width:200px;flex-shrink:0;background:var(--panel);border-right:1px solid var(--line);padding:20px 12px}.nav-title{font-weight:700;font-size:13px;margin-bottom:16px;padding:0 8px;color:var(--accent)}.nav ul{list-style:none;margin:0;padding:0}.nav li a{display:block;padding:8px;border-radius:var(--radius);color:var(--text)}.nav li a:hover{background:var(--bg);text-decoration:none}.nav-logout{margin-top:16px;padding:0 8px}.nav-logout button{width:100%}.main{flex:1 1;display:flex;flex-direction:column;min-width:0}.content{flex:1 1;padding:28px 32px;max-width:1080px}h1{font-size:20px;margin:0 0 4px}h2{font-size:16px;margin:24px 0 8px}.page-desc{color:var(--muted);margin:0 0 20px}.unofficial-footer{padding:14px 32px;border-top:1px solid var(--line);color:var(--muted);font-size:12px;background:var(--panel)}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));grid-gap:12px;gap:12px;margin-bottom:8px}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:14px 16px}.card .card-key{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.03em}.card .card-value{font-size:28px;font-weight:700;margin:4px 0}.card .card-name{font-size:13px;font-weight:600}.card .card-def{font-size:12px;color:var(--muted);margin-top:4px}table{width:100%;border-collapse:collapse;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}td,th{text-align:left;padding:8px 12px;border-bottom:1px solid var(--line);vertical-align:top}th{background:var(--bg);font-size:12px;color:var(--muted);font-weight:600}tr:last-child td{border-bottom:none}.form-grid{display:grid;grid-gap:12px;gap:12px;max-width:640px}label{display:block;font-size:12px;font-weight:600;margin-bottom:4px;color:var(--muted)}input[type=datetime-local],input[type=password],input[type=text],input[type=url],select,textarea{width:100%;padding:7px 10px;border:1px solid var(--line);border-radius:var(--radius);font-size:13px;font-family:inherit;background:var(--panel);color:var(--text)}textarea{min-height:80px;resize:vertical}.checkbox-row{display:flex;align-items:center;gap:8px}.checkbox-row input{width:auto}.btn,button{display:inline-block;padding:8px 16px;border:1px solid var(--accent);border-radius:var(--radius);background:var(--accent);color:var(--accent-contrast);font-size:13px;font-weight:600;cursor:pointer}button:hover{opacity:.9}button.secondary{background:var(--panel);color:var(--text);border-color:var(--line)}.badge{display:inline-block;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:600;background:var(--bg);border:1px solid var(--line)}.badge.status-applied{background:#e4f2e9;border-color:#bfe0cc;color:var(--accent)}.badge.status-held,.badge.status-rejected{background:#f6e6e1;border-color:#e3c3b8;color:var(--danger)}.empty{color:var(--muted);padding:24px 0}.breadcrumb{font-size:12px;color:var(--muted);margin-bottom:8px}pre.json-view{background:var(--bg);border:1px solid var(--line);border-radius:var(--radius);padding:12px;font-size:12px;overflow-x:auto;max-width:100%}