/*! tailwindcss v4.2.4 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-font-weight:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-red-100:oklch(93.6% .032 17.717);--color-red-200:oklch(88.5% .062 18.334);--color-red-500:oklch(63.7% .237 25.331);--color-red-600:oklch(57.7% .245 27.325);--color-red-700:oklch(50.5% .213 27.518);--color-red-800:oklch(44.4% .177 26.899);--color-red-900:oklch(39.6% .141 25.723);--color-yellow-100:oklch(97.3% .071 103.193);--color-yellow-200:oklch(94.5% .129 101.54);--color-yellow-500:oklch(79.5% .184 86.047);--color-yellow-600:oklch(68.1% .162 75.834);--color-yellow-700:oklch(55.4% .135 66.442);--color-yellow-800:oklch(47.6% .114 61.907);--color-yellow-900:oklch(42.1% .095 57.708);--color-green-100:oklch(96.2% .044 156.743);--color-green-200:oklch(92.5% .084 155.995);--color-green-500:oklch(72.3% .219 149.579);--color-green-600:oklch(62.7% .194 149.214);--color-green-700:oklch(52.7% .154 150.069);--color-green-800:oklch(44.8% .119 151.328);--color-green-900:oklch(39.3% .095 152.535);--color-blue-100:oklch(93.2% .032 255.585);--color-blue-200:oklch(88.2% .059 254.128);--color-blue-500:oklch(62.3% .214 259.815);--color-blue-600:oklch(54.6% .245 262.881);--color-blue-700:oklch(48.8% .243 264.376);--color-blue-800:oklch(42.4% .199 265.638);--color-blue-900:oklch(37.9% .146 265.522);--spacing:.25rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--font-weight-semibold:600;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.pointer-events-auto{pointer-events:auto}.pointer-events-none{pointer-events:none}.\!visible{visibility:visible!important}.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.top-4{top:calc(var(--spacing) * 4)}.right-4{right:calc(var(--spacing) * 4)}.z-\[9999\]{z-index:9999}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mr-2{margin-right:calc(var(--spacing) * 2)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.table{display:table}.h-5{height:calc(var(--spacing) * 5)}.w-5{width:calc(var(--spacing) * 5)}.flex-shrink{flex-shrink:1}.flex-shrink-0{flex-shrink:0}.translate-x-full{--tw-translate-x:100%;translate:var(--tw-translate-x) var(--tw-translate-y)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-end{align-items:flex-end}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)))}.overflow-hidden{overflow:hidden}.rounded-lg{border-radius:var(--radius-lg)}.border{border-style:var(--tw-border-style);border-width:1px}.border-l-4{border-left-style:var(--tw-border-style);border-left-width:4px}.border-blue-500{border-color:var(--color-blue-500)}.border-green-500{border-color:var(--color-green-500)}.border-red-500{border-color:var(--color-red-500)}.border-yellow-500{border-color:var(--color-yellow-500)}.bg-blue-100{background-color:var(--color-blue-100)}.bg-green-100{background-color:var(--color-green-100)}.bg-red-100{background-color:var(--color-red-100)}.bg-yellow-100{background-color:var(--color-yellow-100)}.p-2{padding:calc(var(--spacing) * 2)}.text-center{text-align:center}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.text-blue-600{color:var(--color-blue-600)}.text-blue-900{color:var(--color-blue-900)}.text-green-600{color:var(--color-green-600)}.text-green-900{color:var(--color-green-900)}.text-red-600{color:var(--color-red-600)}.text-red-900{color:var(--color-red-900)}.text-yellow-600{color:var(--color-yellow-600)}.text-yellow-900{color:var(--color-yellow-900)}.capitalize{text-transform:capitalize}.italic{font-style:italic}.opacity-0{opacity:0}.opacity-75{opacity:.75}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.grayscale{--tw-grayscale:grayscale(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-300{--tw-duration:.3s;transition-duration:.3s}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}@media (hover:hover){.hover\:scale-105:hover{--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x) var(--tw-scale-y)}.hover\:bg-blue-200:hover{background-color:var(--color-blue-200)}.hover\:bg-green-200:hover{background-color:var(--color-green-200)}.hover\:bg-red-200:hover{background-color:var(--color-red-200)}.hover\:bg-yellow-200:hover{background-color:var(--color-yellow-200)}}@media (prefers-color-scheme:dark){.dark\:border-blue-700{border-color:var(--color-blue-700)}.dark\:border-green-700{border-color:var(--color-green-700)}.dark\:border-red-700{border-color:var(--color-red-700)}.dark\:border-yellow-700{border-color:var(--color-yellow-700)}.dark\:bg-blue-900{background-color:var(--color-blue-900)}.dark\:bg-green-900{background-color:var(--color-green-900)}.dark\:bg-red-900{background-color:var(--color-red-900)}.dark\:bg-yellow-900{background-color:var(--color-yellow-900)}.dark\:text-blue-100{color:var(--color-blue-100)}.dark\:text-green-100{color:var(--color-green-100)}.dark\:text-red-100{color:var(--color-red-100)}.dark\:text-yellow-100{color:var(--color-yellow-100)}@media (hover:hover){.dark\:hover\:bg-blue-800:hover{background-color:var(--color-blue-800)}.dark\:hover\:bg-green-800:hover{background-color:var(--color-green-800)}.dark\:hover\:bg-red-800:hover{background-color:var(--color-red-800)}.dark\:hover\:bg-yellow-800:hover{background-color:var(--color-yellow-800)}}}}:root{--bg-primary:#06060a;--bg-secondary:#0e0e14;--bg-card:#14141c;--bg-card-hover:#1a1a26;--border:#ffffff0f;--text-primary:#f0f0f5;--text-secondary:#a0a0b8;--text-muted:#94a3b8;--accent:#7c4dff;--accent-light:#a78bfa;--accent-glow:#7c4dff59;--gradient-1:linear-gradient(135deg, #7c4dff 0%, #a78bfa 50%, #38bdf8 100%);--green:#10b981;--red:#ef4444;--yellow:#f59e0b;--font-sans:"Inter", system-ui, -apple-system, sans-serif;--font-mono:"JetBrains Mono", monospace;--radius:14px;--radius-sm:8px;--radius-lg:22px;--shadow-sm:0 4px 12px #0003;--shadow-lg:0 10px 40px #0009;--transition:all .35s cubic-bezier(.4, 0, .2, 1);--surface-bg:linear-gradient(145deg, #1b1a30d1, #0d0d18c7);--header-bg:#06060acc;--sidebar-bg:#0e0e14d9;--input-bg:#0808118c;--glass:#ffffff08;--hover-bg:#ffffff0d;--surface-border:var(--border);--surface-shadow:var(--shadow-sm)}[data-theme=light]{--bg-primary:#f8fafc;--bg-secondary:#f1f5f9;--bg-card:#fff;--bg-card-hover:#f1f5f9;--border:#00000014;--text-primary:#0f172a;--text-secondary:#475569;--text-muted:#64748b;--accent:#6c3ce9;--accent-light:#8b5cf6;--accent-glow:#6c3ce940;--shadow-sm:0 4px 12px #0000000f;--shadow-lg:0 10px 30px #0000000d;--surface-bg:linear-gradient(145deg, #fff 0%, #f8f7ff 100%);--header-bg:#f8fafce0;--sidebar-bg:#fffffff0;--input-bg:#fff;--glass:#6c3ce90b;--hover-bg:#6c3ce912;--surface-border:#6c3ce924;--surface-shadow:0 12px 32px #47348214}[data-theme=light] body:before{opacity:.5;background:linear-gradient(#6c3ce906 1px,#0000 1px)}[data-theme=light] .login-screen:before{opacity:.1}[data-theme=light] .login-screen:after{opacity:.07}[data-theme=light] .login-card{border-color:var(--surface-border);box-shadow:0 24px 70px #4734821f}[data-theme=light] .sidebar-link.active,[data-theme=light] .theme-option.active{color:#fff}[data-theme=light] .admin-user{border-color:var(--surface-border);background:#fff;box-shadow:0 4px 14px #4734820f}[data-theme=light] .CodeMirror,[data-theme=light] .editor-toolbar{background:#fff!important}[data-theme=light] .editor-preview-active-side,[data-theme=light] .editor-preview,[data-theme=light] .CodeMirror-gutters{background:#f8f7ff!important}*,:before,:after{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);background:radial-gradient(circle at 82% 6%, #9b7cff1c, transparent 30rem), var(--bg-primary);color:var(--text-primary);line-height:1.6;overflow-x:hidden}body:before{content:"";z-index:-1;pointer-events:none;opacity:.22;background:linear-gradient(#ffffff05 1px,#0000 1px) 0 0/100% 5px;position:fixed;inset:0}body.sidebar-open{overflow:hidden}a{color:inherit;text-decoration:none}button{cursor:pointer;background:0 0;border:none;font-family:inherit}input,textarea,select{font-family:inherit}.logo-bracket{color:var(--accent)}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:10px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.btn{border-radius:var(--radius-sm);transition:var(--transition);white-space:nowrap;justify-content:center;align-items:center;gap:10px;padding:10px 20px;font-size:.85rem;font-weight:600;display:inline-flex}.btn-primary{background:var(--accent);color:#0b0915;font-weight:800;box-shadow:0 4px 15px #7c4dff4d}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 25px #7c4dff80}.btn:active{transform:translateY(0)}.btn-outline{border:1px solid var(--border);color:var(--text-primary);background:var(--glass)}.btn-outline:hover{border-color:var(--accent);background:#7c4dff0d}.btn-danger{color:var(--red);background:#ef44441a;border:1px solid #ef444433}.btn-danger:hover{background:var(--red);color:#fff}.btn-sm{padding:6px 12px;font-size:.75rem}.btn-full{width:100%}.btn:disabled{opacity:.55;cursor:not-allowed}.form-group{flex-direction:column;gap:8px;margin-bottom:20px;display:flex}.form-group label{color:var(--text-secondary);font-size:.8rem;font-weight:600}.field-hint{color:var(--text-muted);font-size:.72rem;line-height:1.4}.form-group input,.form-group textarea,.form-group select{border-radius:var(--radius-sm);background:var(--input-bg);border:1px solid var(--border);color:var(--text-primary);transition:var(--transition);padding:12px 16px;font-size:.9rem}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{border-color:var(--accent-light);background:var(--input-bg);outline:none;box-shadow:0 0 0 4px #9b7cff1f}.form-group input::placeholder,.form-group textarea::placeholder{color:#7f7f97}.login-screen{background:var(--bg-primary);justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex;position:relative;overflow:hidden}.login-screen:before{content:"";background:var(--accent);filter:blur(150px);opacity:.15;border-radius:50%;width:300px;height:300px;position:absolute;top:10%;left:10%}.login-screen:after{content:"";filter:blur(150px);opacity:.1;background:#38bdf8;border-radius:50%;width:250px;height:250px;position:absolute;bottom:10%;right:10%}.login-card{background:var(--surface-bg);-webkit-backdrop-filter:blur(20px)saturate(140%);backdrop-filter:blur(20px)saturate(140%);border:1px solid #a78bfa2e;border-top:3px solid var(--accent);border-radius:var(--radius-lg);z-index:10;width:100%;max-width:440px;padding:28px 40px 32px;position:relative;box-shadow:0 20px 70px #0000002e}.login-back{color:var(--text-secondary);transition:var(--transition);align-items:center;gap:8px;margin-bottom:24px;font-size:.8rem;font-weight:600;display:inline-flex}.login-back:hover{color:var(--accent-light);transform:translate(-3px)}.login-header{text-align:center;margin-bottom:28px}.login-eyebrow{color:var(--accent-light);font:600 .62rem/1 var(--font-mono);letter-spacing:.16em;margin-bottom:6px;display:block}.login-header h1{font-size:2rem;font-weight:800;font-family:var(--font-mono);letter-spacing:-.05em}.login-header p{max-width:32ch;color:var(--text-muted);margin:9px auto 0;font-size:.84rem;line-height:1.6}.login-field{gap:7px}.login-input-wrap{position:relative}.login-input-wrap>i{z-index:1;color:var(--text-muted);pointer-events:none;font-size:.82rem;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.login-input-wrap input{width:100%;padding-left:40px}.login-input-wrap:focus-within>i{color:var(--accent-light)}.login-submit{min-height:46px;margin-top:4px}.login-submit i{transition:transform var(--transition);font-size:.75rem}.login-submit:hover i{transform:translate(4px)}.login-error{min-height:1.2em;color:var(--red);text-align:center;margin-top:10px;font-size:.78rem}.login-footer{border-top:1px solid var(--border);color:var(--text-muted);justify-content:center;align-items:center;gap:7px;margin-top:18px;padding-top:18px;font-size:.7rem;display:flex}.admin-dashboard{min-height:100vh;display:flex}.sidebar{background:var(--sidebar-bg);-webkit-backdrop-filter:blur(20px)saturate(150%);backdrop-filter:blur(20px)saturate(150%);border-right:1px solid var(--surface-border);z-index:1000;flex-direction:column;width:280px;transition:transform .4s cubic-bezier(.4,0,.2,1),width .4s cubic-bezier(.4,0,.2,1);display:flex;position:fixed;top:0;bottom:0;left:0}.sidebar-header{border-bottom:1px solid var(--border);padding:30px 24px}.sidebar-header h2{font-size:1.2rem;font-weight:800;font-family:var(--font-mono)}.sidebar-nav{flex-direction:column;flex:1;gap:6px;min-height:0;padding:20px 12px;display:flex;overflow-y:auto}.sidebar-link{border-radius:var(--radius-sm);color:var(--text-secondary);transition:var(--transition);text-align:left;align-items:center;padding:12px 16px;font-size:.9rem;font-weight:500;display:flex}.sidebar-link>span:first-child{justify-content:center;width:20px;margin-right:10px;display:inline-flex}.sidebar-link:hover{background:var(--hover-bg);color:var(--text-primary)}.sidebar-link.active{background:var(--accent);color:#fff;box-shadow:0 4px 12px #7c4dff4d}.sidebar-logout{border-top:1px solid var(--border);color:var(--red);transition:var(--transition);align-items:center;gap:10px;padding:20px 24px;font-size:.9rem;font-weight:600;display:flex}.sidebar-logout:hover{background:#ef44440d}.admin-main{flex:1;max-width:calc(100vw - 280px);min-height:100vh;margin-left:280px;padding:30px 40px;transition:margin-left .4s cubic-bezier(.4,0,.2,1),max-width .4s cubic-bezier(.4,0,.2,1)}.admin-header{background:var(--header-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:130;border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:20px;margin-bottom:40px;padding:15px 0;display:flex;position:sticky;top:0}.admin-header h2{letter-spacing:-.02em;font-size:1.5rem;font-weight:700}.admin-header-actions{align-items:center;gap:12px;display:flex}.admin-user{color:var(--text-secondary);background:var(--bg-card);border:1px solid var(--border);border-radius:20px;padding:8px 16px;font-size:.85rem}.theme-switcher{background:var(--glass);border:1px solid var(--border);border-radius:999px;align-items:center;gap:3px;padding:3px;display:inline-flex}.theme-option{min-height:30px;color:var(--text-muted);transition:var(--transition);border-radius:999px;align-items:center;gap:6px;padding:5px 10px;font-size:.72rem;font-weight:700;display:inline-flex}.theme-option:hover{color:var(--text-primary);background:var(--hover-bg)}.theme-option.active{color:#fff;background:var(--accent);box-shadow:0 3px 10px var(--accent-glow)}.theme-option i{font-size:.7rem}.admin-page{animation:.4s fadeIn;display:none}.admin-page.active{display:block}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:40px;display:grid}.stat-card{background:var(--surface-bg);border:1px solid var(--surface-border);box-shadow:var(--surface-shadow);border-radius:var(--radius);transition:var(--transition);padding:24px;position:relative;overflow:hidden}.stat-card:before{content:"";background:var(--gradient-1);opacity:0;width:3px;transition:var(--transition);position:absolute;top:0;bottom:0;left:0}.stat-card:hover{border-color:var(--accent);box-shadow:var(--shadow-sm);transform:translateY(-5px)}.stat-card:hover:before{opacity:1}.stat-card h3{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:10px;font-size:.85rem}.stat-card span{font-size:2.2rem;font-weight:800;font-family:var(--font-mono);color:var(--accent-light)}.analytics-grid{grid-template-columns:repeat(auto-fit,minmax(min(400px,100%),1fr));gap:24px;margin-top:40px;display:grid}.analytics-chart-container{background:var(--surface-bg);border-radius:var(--radius);border:1px solid var(--surface-border);box-shadow:var(--surface-shadow);padding:24px}.chart-box{width:100%;height:300px;position:relative}.projects-table-wrap{background:var(--surface-bg);border:1px solid var(--surface-border);border-radius:var(--radius);box-shadow:var(--surface-shadow);overflow:auto}.projects-table{border-collapse:collapse;text-align:left;width:100%}.projects-table th{background:var(--accent);padding:14px 20px}@supports (color:color-mix(in lab, red, red)){.projects-table th{background:color-mix(in srgb, var(--accent) 5%, var(--bg-secondary))}}.projects-table th{color:var(--text-muted);text-transform:uppercase;z-index:1;font-size:.75rem;font-weight:700;position:sticky;top:0}.projects-table td{border-top:1px solid var(--border);vertical-align:middle;padding:14px 20px;font-size:.9rem}.projects-table tbody tr{transition:var(--transition)}.projects-table tbody tr:hover{background:#7c4dff0f}.projects-table tbody tr{cursor:grab}.table-actions{gap:8px;display:flex}.modal-overlay{z-index:1000;opacity:0;pointer-events:none;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#000000d9;justify-content:center;align-items:center;padding:20px;transition:all .3s;display:flex;position:fixed;inset:0}.modal-overlay.active{opacity:1;pointer-events:auto}.modal-content{background:var(--surface-bg);border:1px solid var(--surface-border);border-radius:var(--radius-lg);width:100%;max-width:700px;max-height:90vh;box-shadow:var(--shadow-lg);padding:40px;transition:all .3s cubic-bezier(.175,.885,.32,1.275);overflow-y:auto;transform:scale(.95)}.modal-overlay.active .modal-content{transform:scale(1)}.modal-content.modal-wide{max-width:1080px}.article-editor-layout{grid-template-columns:minmax(0,1.6fr) minmax(260px,.75fr);align-items:start;gap:28px;display:grid}.article-content-heading{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.article-content-heading label{margin:0}.article-publish-panel{background:var(--glass);border:1px solid var(--surface-border);border-radius:var(--radius-sm);padding:20px}.article-publish-panel h4{margin-bottom:20px;font-size:1rem}.article-publish-panel .form-group{margin-bottom:16px}.publish-toggle{color:var(--text-secondary);cursor:pointer;align-items:center;gap:10px;font-size:.85rem;display:flex}.publish-toggle input{accent-color:var(--accent)}.editor-guide{color:var(--text-muted);margin-top:10px;font-size:.75rem}.editor-guide summary{cursor:pointer;color:var(--accent-light);font-weight:600}.editor-guide span{margin-top:6px;line-height:1.7;display:block}.media-picker-dialog{width:min(760px,100vw - 32px);max-height:min(720px,100vh - 40px);color:var(--text-primary);background:var(--surface-bg);border:1px solid var(--surface-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:24px}.media-picker-dialog::backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#000000bf}.media-picker-header{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.media-picker-header h3{margin:0;font-size:1.15rem}.media-picker-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px;max-height:55vh;display:grid;overflow-y:auto}.media-picker-item{text-align:left;min-width:0;color:var(--text-primary);background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition);flex-direction:column;gap:7px;padding:8px;display:flex}.media-picker-item:hover,.media-picker-item:focus-visible{border-color:var(--accent);box-shadow:var(--shadow-sm);transform:translateY(-2px)}.media-picker-item img{object-fit:cover;background:var(--bg-secondary);border-radius:4px;width:100%;height:100px}.media-picker-item span{white-space:nowrap;text-overflow:ellipsis;font-size:.72rem;overflow:hidden}.media-picker-empty{color:var(--text-muted);margin:10px 0;font-size:.85rem;line-height:1.6}@media (prefers-reduced-motion:reduce){.media-picker-item{transition:none}}.admin-form .form-row{grid-template-columns:1fr 1fr;gap:20px;display:grid}.modal-actions{justify-content:flex-end;gap:12px;margin-top:30px;display:flex}@media (width<=1024px){.sidebar{transform:translate(-100%)}.sidebar.open{transform:translate(0)}.admin-main{max-width:100vw;margin-left:0;padding:20px}.sidebar-toggle{display:block!important}.admin-user{display:none}.admin-header h2{font-size:1.2rem}.theme-option span{display:none}.theme-option{justify-content:center;width:30px;padding:5px}.admin-header{margin-bottom:24px}.modal-content{max-height:86vh;padding:24px}.article-editor-layout{grid-template-columns:1fr;gap:16px}.modal-content.modal-wide{max-width:700px}.article-publish-panel{order:-1}.media-picker-dialog{padding:18px}.admin-form .form-row{grid-template-columns:1fr;gap:12px}.table-actions{flex-wrap:wrap}}@media (width<=640px){.login-card{padding:24px 22px 26px}.login-header h1{font-size:1.75rem}.btn{padding:10px 14px;font-size:.8rem}.stats-grid{grid-template-columns:1fr 1fr;gap:12px}.stat-card{padding:16px}.stat-card span{font-size:1.4rem}.projects-table th,.projects-table td{padding:12px 10px;font-size:.8rem}.page-actions{justify-content:stretch}.page-actions .btn{width:100%}}.sidebar-toggle,#sidebarToggle{cursor:pointer;z-index:1001;background:0 0;border:none;flex-direction:column;justify-content:space-between;width:24px;height:18px;margin-right:20px;padding:0;display:flex;position:relative}.sidebar-toggle span,#sidebarToggle span{background-color:var(--text-primary);transform-origin:0;border-radius:4px;width:100%;height:2.5px;transition:all .3s cubic-bezier(.4,0,.2,1)}.sidebar-toggle.active span:first-child,#sidebarToggle.active span:first-child{transform:rotate(45deg)}.sidebar-toggle.active span:nth-child(2),#sidebarToggle.active span:nth-child(2){opacity:0;width:0}.sidebar-toggle.active span:nth-child(3),#sidebarToggle.active span:nth-child(3){transform:rotate(-45deg)}body.sidebar-mini .sidebar{width:80px}body.sidebar-mini .admin-main{max-width:calc(100vw - 80px);margin-left:80px}body.sidebar-mini .sidebar-header h2{font-size:0}body.sidebar-mini .sidebar-header h2 .logo-bracket{font-size:1.2rem;display:inline-block}body.sidebar-mini .sidebar-link{justify-content:center;padding:12px 0;font-size:0}body.sidebar-mini .sidebar-link span:first-child{margin-right:0;font-size:1.2rem}body.sidebar-mini .sidebar-logout{justify-content:center;padding:20px 0;font-size:0}body.sidebar-mini .sidebar-logout span:first-child{margin-right:0;font-size:1.2rem}.page-actions{justify-content:flex-end;margin-bottom:24px;display:flex}.admin-helper-text{color:var(--text-secondary);margin:-10px 0 20px;font-size:.85rem}.mobile-bottom-nav{background:var(--glass-bg);height:65px;-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(150%);backdrop-filter:blur(var(--glass-blur)) saturate(150%);border-top:1px solid var(--glass-border);z-index:900;justify-content:space-around;align-items:center;padding:0 10px;display:none;position:fixed;bottom:0;left:0;right:0}.mobile-nav-item{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;flex-direction:column;align-items:center;gap:4px;min-width:60px;padding:10px 5px;transition:all .3s;display:flex}.mobile-nav-item.active{color:var(--accent)}.mobile-nav-item span:first-child{font-size:1.2rem}.mobile-nav-item span:last-child{font-size:.65rem;font-weight:600}@media (width<=768px){body.is-authenticated .mobile-bottom-nav{display:flex}body.is-authenticated .admin-main{padding-bottom:80px}}.sidebar-backdrop{opacity:0;pointer-events:none;transition:var(--transition);z-index:110;background:#0000008c;position:fixed;inset:0}.sidebar-backdrop.active{opacity:1;pointer-events:auto}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,a:focus-visible{outline:2px solid var(--accent-light);outline-offset:2px}.editor-toolbar{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm) var(--radius-sm) 0 0;opacity:1;border-bottom:none}.editor-toolbar button{transition:var(--transition);color:var(--text-primary)!important}.editor-toolbar button:hover,.editor-toolbar button.active{background:var(--accent)!important;color:#fff!important;border-color:var(--accent)!important}.editor-toolbar i.separator{border-left-color:var(--border)!important;border-right-color:var(--border)!important}.CodeMirror{border-radius:0 0 var(--radius-sm) var(--radius-sm);font-size:.9rem;background:var(--bg-card)!important;color:var(--text-primary)!important;border:1px solid var(--border)!important;font-family:var(--font-mono)!important}.CodeMirror-cursor{border-left:2px solid var(--accent)!important}.CodeMirror-gutters{background:var(--bg-secondary)!important;border-right:1px solid var(--border)!important}.editor-preview-active-side,.editor-preview{background:var(--bg-secondary)!important;color:var(--text-primary)!important;border-color:var(--border)!important}.editor-statusbar{font-size:.75rem;color:var(--text-muted)!important;padding:8px 12px!important}.editor-toolbar.fullscreen,.CodeMirror-fullscreen,.editor-preview-side.editor-preview-active-side{z-index:1100!important}.CodeMirror-selected{background:#7c4dff4d!important}.cm-header{color:var(--accent-light)!important;font-weight:700!important}.cm-bold{color:var(--text-primary)!important;font-weight:700!important}.cm-italic{color:var(--text-primary)!important;font-style:italic!important}.cm-quote{color:var(--text-muted)!important;font-style:italic!important}.cm-link{color:var(--accent-light)!important}.cm-url{color:var(--text-muted)!important}.cm-variable-2{color:var(--accent-light)!important}.cm-comment{color:var(--green)!important}.cm-string{color:var(--yellow)!important}.media-card:hover{box-shadow:var(--shadow-sm);transform:translateY(-5px);border-color:var(--accent)!important}.media-card:focus-visible{outline:2px solid var(--accent-light);outline-offset:2px}.media-card img{transition:transform .5s}.media-card:hover img{transform:scale(1.1)}.ai-opt{text-align:left;width:100%;color:var(--text-primary);transition:var(--transition);border:none;border-bottom:1px solid var(--border);background:0 0;padding:10px 15px;font-size:.85rem;font-weight:500;display:block}.ai-opt:last-child{border-bottom:none}.ai-opt:hover{background:var(--accent);color:#fff}.editor-toolbar button:before{color:inherit}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}
