*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--color-primary: #1a365d;--color-primary-light: #2a4a7f;--color-accent: #c6943e;--color-bg: #f7f8fa;--color-surface: #ffffff;--color-text: #1a202c;--color-text-muted: #636e7b;--color-border: #e2e6ea;--color-success: #2f855a;--color-error: #c53030;--radius: 8px;--shadow: 0 1px 3px rgba(0, 0, 0, .08)}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--color-bg);color:var(--color-text);line-height:1.6}a{color:var(--color-primary);text-decoration:none}a:hover{text-decoration:underline}.container{max-width:720px;margin:0 auto;padding:2rem 1.5rem}h1{font-size:1.75rem;font-weight:700;margin-bottom:.5rem}h2{font-size:1.25rem;font-weight:600;margin-bottom:1rem}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:1.5rem;box-shadow:var(--shadow);margin-bottom:1.5rem}.card h3{font-size:1.1rem;margin-bottom:.25rem}.card p{color:var(--color-text-muted);font-size:.9rem}.form-group{margin-bottom:1.25rem}.form-group label{display:block;font-weight:600;font-size:.9rem;margin-bottom:.35rem}.form-group .hint{display:block;font-size:.8rem;color:var(--color-text-muted);margin-bottom:.35rem}.form-group input,.form-group textarea,.form-group select{width:100%;padding:.6rem .75rem;border:1px solid var(--color-border);border-radius:var(--radius);font-size:.95rem;font-family:inherit;background:var(--color-surface);transition:border-color .15s}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px #1a365d26}.form-group textarea{min-height:100px;resize:vertical}.btn{display:inline-block;padding:.65rem 1.5rem;font-size:.95rem;font-weight:600;border:none;border-radius:var(--radius);cursor:pointer;transition:background .15s}.btn-primary{background:var(--color-primary);color:#fff}.btn-primary:hover{background:var(--color-primary-light)}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.alert{padding:.75rem 1rem;border-radius:var(--radius);font-size:.9rem;margin-bottom:1rem}.alert-success{background:#f0fff4;border:1px solid #c6f6d5;color:var(--color-success)}.alert-error{background:#fff5f5;border:1px solid #fed7d7;color:var(--color-error)}.duplicate-warning{background:#fffbeb;border:1px solid #fde68a;border-radius:var(--radius);padding:.75rem 1rem;margin-bottom:1rem;font-size:.9rem;color:#92400e}
