:root{font-family:system-ui,-apple-system,"Segoe UI",sans-serif;color:#192c3b;background:#f4f7fa;font-size:14px}*{box-sizing:border-box}body{margin:0}header{background:#fff;border-bottom:1px solid #dfe6ec;padding:18px max(24px,calc((100vw - 1240px)/2));display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;gap:12px;align-items:center}.brand strong{font-size:20px}.brand small{display:block;color:#647587;font-size:12px;margin-top:2px}.brand-icon{display:inline-grid;place-items:center;background:#1866ce;color:white;border-radius:12px;width:42px;height:42px;font-size:26px;font-weight:800}.header-actions{display:flex;align-items:center;gap:20px}#sync{font-size:12px;color:#526779}main{max-width:1240px;margin:32px auto;padding:0 24px}h1{font-size:28px;margin:0 0 8px;letter-spacing:-.7px}h2{font-size:18px;margin:0 0 8px}p{color:#647587;line-height:1.6;margin:0 0 18px}.title-row,.section-title{display:flex;justify-content:space-between;align-items:center;gap:20px}.panel{background:#fff;border:1px solid #dfe6ec;border-radius:12px;overflow:hidden;margin:12px 0 24px;box-shadow:0 3px 10px #14243804}.manage{padding:24px}.filters{display:flex;gap:16px;padding:20px;border-bottom:1px solid #e8edf2}label{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:600;color:#536779}input,select,textarea{font:inherit;color:#192c3b;background:#fff;border:1px solid #ccd6df;border-radius:7px;padding:10px 12px;min-width:0;max-width:100%}input:focus,select:focus,textarea:focus{outline:2px solid #8cb9f8;outline-offset:1px}.search,.grow{flex:1}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;white-space:nowrap}th{text-align:left;background:#fafbfd;color:#6c7e8d;font-size:11px;text-transform:uppercase;letter-spacing:.4px;padding:14px 20px}td{padding:16px 20px;border-top:1px solid #edf1f5;font-size:13px}td small{display:block;margin-top:5px;color:#6b7d8e}.code{font-family:Consolas,monospace;font-weight:700;letter-spacing:2px;font-size:21px}.code.unused{color:#08733b}.code.used{color:#b42435}.badge{display:inline-block;border-radius:30px;padding:5px 10px;font-size:12px;font-weight:600}.badge.unused{color:#096536;background:#e3f6e9}.badge.used{color:#b02435;background:#fde8eb}button{font:inherit;font-weight:600;color:#fff;background:#1866ce;border:1px solid #1866ce;border-radius:7px;padding:10px 16px;cursor:pointer;white-space:nowrap}button:hover{filter:brightness(.96)}button:disabled{opacity:.45;cursor:default}.secondary{background:#fff;color:#40566b;border-color:#ccd6df}.danger{color:#b02435;background:#fff;border-color:#efc6cd}.small{font-size:12px;padding:6px 10px}.pagination{display:flex;justify-content:space-between;align-items:center;padding:14px 20px;border-top:1px solid #e8edf2;color:#6b7d8e;font-size:12px}.pagination>div{display:flex;align-items:center;gap:12px}.inline-form{display:flex;gap:12px;align-items:end;flex-wrap:wrap;padding-bottom:20px;margin-bottom:10px;border-bottom:1px solid #edf1f5}.cards{display:grid;gap:10px}.item{display:flex;justify-content:space-between;align-items:center;gap:15px;border:1px solid #e3e9ef;border-radius:8px;padding:14px 16px}.item p{margin:4px 0 0;font-size:12px;overflow-wrap:anywhere}.item .actions{display:flex;gap:7px;flex-wrap:wrap}.error{color:#a91f32;background:#fff0f1;border:1px solid #f2cbd0;padding:12px;border-radius:7px}.token-box{padding:16px;background:#eef6ff;border:1px solid #b5d2f5;border-radius:8px;margin:0 0 20px}.token-box textarea{display:block;width:100%;margin:10px 0;font-family:Consolas,monospace;overflow-wrap:anywhere}footer{text-align:center;font-size:12px;color:#7d8c9b;margin:30px 20px}.login{min-height:100vh;display:grid;place-items:center;padding:24px}.login-card{margin:0;background:white;border:1px solid #dfe6ec;border-radius:16px;padding:36px;width:100%;max-width:410px;box-shadow:0 12px 40px #1733530a}.login-card h1{margin-top:20px}.login-card form{display:grid;gap:18px}.login-card button{margin-top:4px}[hidden]{display:none!important}.empty{text-align:center;padding:40px;color:#728392}@media(max-width:700px){header{padding:14px 16px}.brand small,#sync{display:none}main{padding:0 12px;margin:24px auto}h1{font-size:24px}.filters{flex-wrap:wrap;padding:16px}.filters label{flex:1;min-width:140px}.filters .search{flex-basis:100%}.manage{padding:16px}.inline-form label{flex:1;min-width:160px}.item{align-items:flex-start;flex-direction:column}td,th{padding:14px}footer{line-height:1.6}}
