*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--accent:#4f46e5;--accent-dark:#4338ca;--accent-darker:#362fa0;--accent-light:#6366f1;--accent-soft:#eef0ff;--accent-ghost:#f5f6ff;--accent-muted:#4338ca;--accent-rgb:79,70,229;--accent-gradient:linear-gradient(135deg,#4f46e5 0%,#7c3aed 100%);--accent-gradient-soft:linear-gradient(135deg,rgba(79,70,229,.08) 0%,rgba(124,58,237,.08) 100%);--surface:#fff;--surface-soft:#fafafd;--surface-muted:#f3f4f8;--surface-border:#e5e7f0;--surface-border-strong:#d6d9e8;--surface-highlight:#fff;--page-background:#f6f7fb;--text-primary:#14162b;--text-secondary:#4a4d68;--text-muted:#6b6e8a;--text-faint:#9a9cb5;--text-on-accent:#fff;--success:#15803d;--success-soft:#e9f8ef;--success-border:#beeacb;--warning:#b45309;--warning-soft:#fef3e2;--warning-border:#f6dba6;--danger:#c0292e;--danger-soft:#fcebec;--danger-border:#f3c6c8;--info:var(--accent);--info-soft:var(--accent-soft);--teal:#0f766e;--teal-soft:#e6f6f4;--success-rgb:21,128,61;--danger-rgb:192,41,46;--warning-rgb:180,83,9;--ink-rgb:20,22,43;--muted-rgb:107,110,138;--border-rgb:229,231,240;--shadow-xs:0 1px 2px rgba(20,22,43,.04);--shadow-sm:0 1px 2px rgba(20,22,43,.04),0 2px 6px rgba(20,22,43,.05);--shadow-md:0 6px 16px rgba(20,22,43,.08);--shadow-lg:0 16px 40px rgba(20,22,43,.12);--shadow-soft:var(--shadow-sm);--shadow-focus:0 0 0 4px rgba(var(--accent-rgb),.14);--radius-xs:6px;--radius-sm:8px;--radius-md:10px;--radius-lg:14px;--radius-xl:18px;--radius-full:999px;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--ease:cubic-bezier(.4,0,.2,1);--duration-fast:.12s;--duration:.18s;--font-sans:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;--font-display:"Michroma",var(--font-sans)}html,body{font-family:var(--font-sans);background-color:var(--page-background);background-image:radial-gradient(ellipse 900px 500px at 8% -10%,rgba(var(--accent-rgb),.07),transparent 60%),radial-gradient(ellipse 700px 500px at 100% 0%,rgba(var(--accent-rgb),.05),transparent 55%);color:var(--text-primary);-webkit-font-smoothing:antialiased;min-height:100%;text-rendering:optimizeLegibility;background-repeat:no-repeat;background-attachment:fixed;margin:0;padding:0;font-size:15px;line-height:1.55}h1,h2,h3,h4,h5,h6{letter-spacing:-.01em;color:var(--text-primary);font-weight:600}a{color:var(--accent);text-decoration:none}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--radius-xs)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--surface-border-strong);border-radius:var(--radius-full);border:2px solid var(--page-background)}::-webkit-scrollbar-thumb:hover{background:var(--text-faint)}::selection{background:rgba(var(--accent-rgb),.18);color:var(--text-primary)}.container{max-width:1280px;margin:0 auto;padding:0 1.5rem}@media (max-width:768px){.container{padding:0 1rem}}.grid{gap:var(--space-6);display:grid}.grid.cols-2{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}@media (max-width:768px){.grid{gap:var(--space-4)}.grid.cols-2{grid-template-columns:1fr}}.card{background:var(--surface);border:1px solid var(--surface-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:box-shadow var(--duration)var(--ease),border-color var(--duration)var(--ease),transform var(--duration)var(--ease);padding:1.5rem}.card h3,.card h4{color:var(--text-primary);margin-bottom:.75rem}@media (max-width:768px){.card{padding:1.125rem}}form{flex-direction:column;gap:1.125rem;display:flex}form label{color:var(--text-secondary);flex-direction:column;gap:.4rem;font-size:.875rem;font-weight:600;display:flex}form input,form select,form textarea{border:1px solid var(--surface-border-strong);border-radius:var(--radius-sm);color:var(--text-primary);background:var(--surface);transition:border-color var(--duration-fast)var(--ease),box-shadow var(--duration-fast)var(--ease);padding:.7rem .85rem;font-family:inherit;font-size:.9375rem}form input::placeholder,form select::placeholder,form textarea::placeholder{color:var(--text-faint)}form input:hover,form select:hover,form textarea:hover{border-color:var(--text-faint)}form input:focus,form select:focus,form textarea:focus{border-color:var(--accent);box-shadow:var(--shadow-focus);outline:none}form input:disabled,form select:disabled,form textarea:disabled{background:var(--surface-muted);color:var(--text-faint);cursor:not-allowed}form textarea{resize:vertical;min-height:100px}form button[type=submit],form button:not([type]){background:var(--accent);color:var(--text-on-accent);border-radius:var(--radius-sm);cursor:pointer;transition:background var(--duration-fast)var(--ease),transform var(--duration-fast)var(--ease),box-shadow var(--duration-fast)var(--ease);border:none;padding:.7rem 1.25rem;font-size:.9375rem;font-weight:600}form button[type=submit]:hover:not(:disabled),form button:not([type]):hover:not(:disabled){background:var(--accent-dark);box-shadow:var(--shadow-sm)}form button[type=submit]:active:not(:disabled),form button:not([type]):active:not(:disabled){transform:translateY(1px)}form button[type=submit]:disabled,form button:not([type]):disabled{opacity:.55;cursor:not-allowed}@media (max-width:768px){form input,form select,form textarea{width:100%;font-size:14px}}.form-title{color:var(--text-primary);font-size:1.25rem;font-weight:700}.form-description{color:var(--text-muted);margin-top:-.5rem;font-size:.875rem}.form-hint{color:var(--text-muted);font-size:.8125rem}.form-actions{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.required-indicator{color:var(--danger);margin-left:.2rem;font-weight:700}button{background:var(--accent-gradient);color:var(--text-on-accent);border-radius:var(--radius-sm);cursor:pointer;transition:filter var(--duration-fast)var(--ease),box-shadow var(--duration-fast)var(--ease),transform var(--duration-fast)var(--ease);border:none;padding:.6rem 1.1rem;font-family:inherit;font-size:.875rem;font-weight:600}button:hover:not(:disabled){filter:brightness(1.06);box-shadow:var(--shadow-focus)}button:active:not(:disabled){filter:brightness(.97);transform:translateY(1px)}button:disabled{opacity:.55;cursor:not-allowed}button.secondary{background:var(--surface);color:var(--text-secondary);border:1px solid var(--surface-border-strong)}button.secondary:hover:not(:disabled){background:var(--surface-muted);border-color:var(--text-faint);color:var(--text-primary);box-shadow:none}.ghost-btn{background:var(--accent-soft);color:var(--accent-dark);border-radius:var(--radius-sm);cursor:pointer;transition:background var(--duration-fast)var(--ease);border:1px solid transparent;padding:.65rem 1.15rem;font-weight:600}.ghost-btn:hover:not(:disabled){background:rgba(var(--accent-rgb),.16)}.ghost-btn:disabled{opacity:.55;cursor:not-allowed}.link-button{color:var(--accent);cursor:pointer;background:0 0;border:none;padding:0;font-weight:600;text-decoration:none}.link-button:hover:not(:disabled){text-decoration:underline}.danger-btn{background:var(--danger);color:#fff}.danger-btn:hover:not(:disabled){background:#a32226}.spinner{animation:.8s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.alert{border-radius:var(--radius-sm);border:1px solid transparent;margin-bottom:.25rem;padding:.75rem 1rem;font-size:.875rem;font-weight:500}.alert.success{background:var(--success-soft);color:var(--success);border-color:var(--success-border)}.alert.error{background:var(--danger-soft);color:var(--danger);border-color:var(--danger-border)}table{border-collapse:collapse;background:var(--surface);border:1px solid var(--surface-border);border-radius:var(--radius-lg);width:100%;font-size:.875rem;overflow:hidden}table thead{background:var(--surface-soft)}table th,table td{text-align:left;border-bottom:1px solid var(--surface-border);padding:.875rem 1rem}table th{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);font-size:.75rem;font-weight:600}table tbody tr{transition:background var(--duration-fast)var(--ease)}table tbody tr:last-child td{border-bottom:none}table tbody tr:hover{background:var(--surface-soft)}@media (max-width:768px){table th,table td{padding:.65rem .5rem;font-size:.8125rem}}.tiptap-toolbar{background:var(--surface-soft);border:1px solid var(--surface-border);border-radius:var(--radius-md)var(--radius-md)0 0;border-bottom:none;flex-wrap:wrap;align-items:center;gap:.375rem;padding:.5rem;display:flex}.tiptap-toolbar__group{border-right:1px solid var(--surface-border-strong);align-items:center;gap:.25rem;margin-right:.25rem;padding-right:.5rem;display:flex}.tiptap-toolbar__group:last-child{border-right:none}.tiptap-toolbar__label{color:var(--text-muted);padding:0 .25rem;font-size:.75rem;font-weight:600}.tiptap-toolbar__button{min-width:2rem;height:2rem;color:var(--text-secondary);border-radius:var(--radius-xs);cursor:pointer;background:0 0;border:1px solid transparent;justify-content:center;align-items:center;padding:0 .5rem;font-size:.8125rem;font-weight:600;display:inline-flex}.tiptap-toolbar__button:hover{background:var(--surface-muted);color:var(--text-primary)}.tiptap-toolbar__button.is-active{background:var(--accent-soft);color:var(--accent-dark);border-color:rgba(var(--accent-rgb),.25)}.tiptap-toolbar__select{border:1px solid var(--surface-border-strong);border-radius:var(--radius-xs);background:var(--surface);height:2rem;color:var(--text-secondary);padding:0 .5rem;font-size:.8125rem}.tiptap-content{border:1px solid var(--surface-border);border-radius:0 0 var(--radius-md)var(--radius-md);background:var(--surface);min-height:220px;padding:1rem;font-size:.9375rem;line-height:1.6}.tiptap-content:focus-within{border-color:var(--accent)}.tiptap-content p{margin-bottom:.75rem}.tiptap-content ul,.tiptap-content ol{margin-bottom:.75rem;padding-left:1.5rem}.badge{border-radius:var(--radius-full);background:var(--surface-muted);color:var(--text-secondary);border:1px solid var(--surface-border);align-items:center;gap:.35rem;padding:.25rem .625rem;font-size:.75rem;font-weight:600;display:inline-flex}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton{background:linear-gradient(90deg,var(--surface-muted)25%,var(--surface-border)37%,var(--surface-muted)63%);border-radius:var(--radius-sm);background-size:400% 100%;animation:1.4s infinite shimmer}
