.page-center{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px}.error-page{padding:28px;max-width:420px;text-align:center}.error-page p{margin:0 0 18px;color:var(--text-muted)}.spinner{display:flex;justify-content:center;padding:48px 0;color:var(--indigo)}.spinner svg{animation:spin .9s linear infinite}.brand{display:flex;align-items:center;gap:10px}.brand-mark{width:30px;height:30px;border-radius:9px;background:var(--indigo);color:#fff;display:flex;align-items:center;justify-content:center}.brand-name{font-family:var(--font-heading);font-weight:700;font-size:19px;letter-spacing:-.02em}.brand-tagline{font-size:12px;color:var(--navy-muted);border-left:1px solid var(--navy-line);padding-left:12px;margin-left:4px}.field-label{display:block;font-size:12.5px;font-weight:600;margin-bottom:6px}.field{margin-bottom:16px}.field-tight{margin-bottom:10px}.field-hint{margin:6px 0 0;font-size:12.5px;line-height:1.5;color:var(--text-subtle)}.field-hint:empty{display:none}.input{width:100%;height:42px;padding:0 12px;border:1px solid var(--border);border-radius:var(--radius-control);font-size:14px;color:var(--text);background:var(--surface)}select.input{padding:0 10px}.input:focus{outline:none;border-color:var(--indigo);box-shadow:0 0 0 3px var(--indigo-ring)}.input-large{height:44px;font-size:14.5px}.textarea{height:auto;min-height:72px;padding:10px 12px;font-size:13.5px;resize:vertical}.input-with-icon{position:relative}.input-with-icon>svg{position:absolute;left:13px;top:50%;transform:translateY(-50%);color:var(--text-subtle);pointer-events:none}.input-with-icon .input{padding-left:38px}.checkbox{display:flex;align-items:center;gap:7px;font-size:13px;color:var(--text-muted);cursor:pointer}.checkbox input{width:15px;height:15px;accent-color:var(--indigo)}.button{height:40px;padding:0 16px;border-radius:var(--radius-control);border:1px solid transparent;font-size:14px;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:7px;white-space:nowrap;text-decoration:none}.button:hover{text-decoration:none}.button:disabled{cursor:not-allowed;opacity:.5}.button-primary{background:var(--indigo);color:#fff;box-shadow:var(--shadow-button)}.button-primary:hover:not(:disabled){background:var(--indigo-hover);color:#fff}.button-secondary{background:var(--surface);border-color:var(--border);color:var(--text-muted)}.button-secondary:hover:not(:disabled){background:var(--background)}.button-ghost{background:transparent;color:var(--text-muted)}.button-ghost:hover{background:var(--border-soft)}.button-danger{background:var(--danger-strong);color:#fff}.button-danger:hover:not(:disabled){background:var(--danger)}.button-danger-outline{background:var(--surface);border-color:var(--danger-line);color:var(--danger)}.button-danger-outline:hover:not(:disabled){background:#fffbfb}.button-large{height:44px;padding:0 20px;font-size:14.5px}.button-block{width:100%}.link-button{background:none;border:none;padding:0;color:var(--indigo);font-size:13px;font-weight:500;cursor:pointer;display:inline-flex;align-items:center;gap:5px}.link-button:hover{color:var(--indigo-hover);text-decoration:underline}.icon-button{width:32px;height:32px;border:1px solid var(--border);border-radius:7px;background:var(--surface);color:var(--text-muted);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;flex:none}.icon-button:hover:not(:disabled){background:var(--background)}.icon-button:disabled{opacity:.5;cursor:not-allowed}.icon-button-soft{border:none;background:var(--border-soft)}.icon-button-danger{color:var(--danger)}.icon-button-success{color:var(--success)}.text-link{display:inline-flex;align-items:center;gap:5px;font-size:13px;font-weight:600}.error-message{display:flex;align-items:flex-start;gap:8px;margin:0 0 14px;padding:10px 12px;border-radius:var(--radius-control);background:#fdf1f0;color:#8e2a20;font-size:13px;line-height:1.45}.error-message svg{margin-top:1px}.error-message .link-button{margin-left:auto;font-weight:600}.notice{margin-top:18px;padding:13px 15px;background:var(--background);border:1px solid var(--border);border-radius:10px;display:flex;gap:10px;align-items:flex-start;font-size:12.5px;line-height:1.55;color:var(--text-muted)}.notice>svg{color:var(--indigo);margin-top:2px}.notice p{margin:0}.notice p+p{margin-top:6px}.notice strong{color:var(--text)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-card)}.pill{display:inline-block;font-size:12px;font-weight:600;padding:4px 10px;border-radius:20px;white-space:nowrap}.pill-success{background:#d7f7c2;color:var(--success)}.pill-info{background:#e4e2ff;color:#4b45b8}.pill-warning{background:#fff0d4;color:var(--warning)}.pill-danger{background:var(--danger-soft);color:var(--danger)}.pill-neutral{background:var(--border-soft);color:var(--text-subtle)}.tone-success{background:var(--success-soft);color:var(--success)}.tone-info{background:var(--indigo-soft);color:var(--indigo)}.tone-warning{background:var(--warning-soft);color:var(--warning)}.tone-danger{background:var(--danger-soft);color:var(--danger)}.tone-neutral{background:var(--border-soft);color:var(--text-subtle)}.avatar,.company-mark{display:inline-flex;align-items:center;justify-content:center;flex:none;font-weight:700;letter-spacing:.02em;-webkit-user-select:none;user-select:none}.avatar{border-radius:50%;border:1px solid var(--border)}.avatar-dark{background:var(--navy-line);color:#fff;border-color:var(--navy-line)}.company-mark{border-radius:10px;border:1px solid var(--border)}.modal{width:calc(100% - 48px);max-width:520px;border:none;border-radius:16px;padding:28px;color:var(--text);box-shadow:0 20px 50px #0a25404d;animation:rise .2s ease both}.modal::backdrop{background:#0a25408c}.modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:22px}.modal-title{margin:0 0 5px;font-family:var(--font-heading);font-size:20px;font-weight:600;letter-spacing:-.02em}.modal-description{margin:0;font-size:13.5px;line-height:1.5;color:var(--text-muted)}.modal-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:10px;margin-top:22px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-grid-full{grid-column:1 / -1}.secret-row{display:flex;gap:10px}.secret-row .input-with-icon{flex:1;min-width:0}.secret-value{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:15px;letter-spacing:.04em}@media(max-width:560px){.form-grid{grid-template-columns:1fr}.modal{padding:22px}}
