@font-face{font-family:"Montserrat";src:url("../fonts/montserrat-webfonts/montserrat-latin-400-normal.woff2") format("woff2"),url("../fonts/montserrat-webfonts/montserrat-latin-400-normal.woff") format("woff");font-weight:400;font-style:normal;font-display:optional;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}@font-face{font-family:"Montserrat";src:url("../fonts/montserrat-webfonts/montserrat-latin-600-normal.woff2") format("woff2"),url("../fonts/montserrat-webfonts/montserrat-latin-600-normal.woff") format("woff");font-weight:600;font-style:normal;font-display:optional;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}@font-face{font-family:"Montserrat";src:url("../fonts/montserrat-webfonts/montserrat-latin-700-normal.woff2") format("woff2"),url("../fonts/montserrat-webfonts/montserrat-latin-700-normal.woff") format("woff");font-weight:700;font-style:normal;font-display:optional;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}:root{--bg:#edf4fc;--bg-strong:#d6e6f8;--card:rgba(244,249,255,0.9);--card-soft:rgba(255,255,255,0.84);--ink:#16263a;--muted:#5b6e86;--muted-strong:rgba(22,38,58,0.62);--muted-soft:rgba(23,32,38,0.4);--accent:#2f6fb5;--accent-dark:#1f4f8a;--accent-soft:rgba(47,111,181,0.12);--line:rgba(22,38,58,0.08);--line-strong:rgba(33,73,118,0.16);--shadow:0 26px 72px rgba(21,52,94,0.12);--shadow-soft:0 12px 32px rgba(21,52,94,0.08);--panel-shadow:0 18px 40px rgba(18,41,72,0.12);--hero-shadow:0 22px 52px rgba(18,41,72,0.14);--radius-lg:32px;--radius-md:22px;--radius-sm:16px;--header-surface:#f5faffdd;--panel-surface:#ffffffd9;--soft-block-bg:rgba(255,255,255,0.54);--soft-block-border:rgba(47,111,181,0.07);--subpanel-surface:rgba(255,255,255,0.56);--subpanel-shadow:0 8px 18px rgba(18,41,72,0.06);--chip-bg:rgba(255,255,255,0.64);--chip-bg-hover:rgba(255,255,255,0.9);--field-bg:rgba(255,255,255,0.9);--field-border:rgba(23,32,38,0.12);--field-muted-bg:rgba(228,237,247,0.88);--surface-muted:rgba(23,32,38,0.04);--surface-muted-strong:rgba(23,32,38,0.05);--gallery-tile-bg:linear-gradient(180deg,rgba(255,255,255,0.98),rgba(229,239,251,0.96)),var(--surface-muted);--gallery-tile-border:rgba(22,38,58,0.08);--gallery-tile-shadow:0 14px 26px rgba(21,52,94,0.07);--gallery-tile-border-hover:rgba(47,111,181,0.18);--gallery-tile-shadow-hover:0 18px 34px rgba(21,52,94,0.12);--dropzone-border:rgba(47,111,181,0.32);--dropzone-glow:rgba(93,148,215,0.16);--dropzone-glow-strong:rgba(93,148,215,0.24);--dropzone-tint:rgba(47,111,181,0.06);--dropzone-tint-strong:rgba(47,111,181,0.12);--overlay-backdrop:rgba(10,13,16,0.56);--overlay-backdrop-strong:rgba(10,13,16,0.68);--modal-surface:rgba(245,250,255,0.96);--panel-header-surface:rgba(255,255,255,0.68);--inverse-text:#fff;--button-bg:linear-gradient(180deg,rgba(255,255,255,0.24),rgba(255,255,255,0) 44%),linear-gradient(180deg,#4a88cd 0%,#3577bf 52%,#225892 100%);--button-border:rgba(24,64,107,0.18);--button-border-bottom:rgba(24,64,107,0.18);--button-text:#fff;--button-text-shadow:0 1px 0 rgba(10,29,55,0.22);--button-sheen:linear-gradient(135deg,rgba(255,255,255,0.26),rgba(255,255,255,0.08) 32%,rgba(255,255,255,0) 60%);--button-shadow:inset 0 1px 0 rgba(255,255,255,0.22),0 14px 24px rgba(38,94,160,0.2),0 4px 10px rgba(19,49,89,0.12);--button-shadow-hover:inset 0 1px 0 rgba(255,255,255,0.3),0 18px 34px rgba(38,94,160,0.24),0 6px 14px rgba(19,49,89,0.14);--button-shadow-active:inset 0 1px 6px rgba(15,43,78,0.16),0 6px 14px rgba(19,49,89,0.18);--button-ghost-bg:linear-gradient(180deg,rgba(255,255,255,0.8),rgba(228,239,251,0.78));--button-ghost-bg-hover:linear-gradient(180deg,rgba(255,255,255,0.88),rgba(230,240,251,0.84));--button-ghost-border:rgba(36,72,116,0.16);--button-ghost-border-bottom:rgba(36,72,116,0.16);--button-ghost-text:var(--ink);--button-ghost-sheen:linear-gradient(135deg,rgba(255,255,255,0.36),rgba(255,255,255,0.12) 34%,rgba(255,255,255,0) 62%);--button-ghost-shadow:inset 0 1px 0 rgba(255,255,255,0.55),0 10px 22px rgba(62,105,156,0.1),0 3px 8px rgba(31,58,95,0.06);--button-ghost-shadow-hover:inset 0 1px 0 rgba(255,255,255,0.7),0 14px 28px rgba(62,105,156,0.18),0 5px 12px rgba(31,58,95,0.1);--button-ghost-shadow-active:inset 0 2px 8px rgba(31,58,95,0.12),0 6px 14px rgba(31,58,95,0.12);}body.is-night{--bg:#08111d;--bg-strong:#102033;--card:rgba(11,18,29,0.9);--card-soft:rgba(14,22,35,0.88);--ink:#eaf2ff;--muted:#9cafc7;--muted-strong:rgba(234,242,255,0.82);--muted-soft:rgba(156,175,199,0.54);--accent:#76aef7;--accent-dark:#a9cbff;--accent-soft:rgba(118,174,247,0.16);--line:rgba(167,193,228,0.14);--line-strong:rgba(167,193,228,0.22);--shadow:0 26px 72px rgba(0,0,0,0.34);--shadow-soft:0 12px 32px rgba(0,0,0,0.22);--panel-shadow:0 0 0 1px rgba(186,212,247,0.08),0 16px 34px rgba(0,0,0,0.28);--hero-shadow:0 0 0 1px rgba(186,212,247,0.1),0 20px 44px rgba(0,0,0,0.32);--header-surface:rgba(12,20,33,0.9);--panel-surface:rgba(15,24,38,0.88);--soft-block-bg:rgba(20,30,45,0.72);--soft-block-border:rgba(118,174,247,0.12);--subpanel-surface:rgba(21,32,49,0.78);--subpanel-shadow:0 0 0 1px rgba(186,212,247,0.05),0 8px 18px rgba(0,0,0,0.22);--chip-bg:rgba(22,34,52,0.84);--chip-bg-hover:rgba(28,42,64,0.96);--field-bg:rgba(18,28,44,0.94);--field-border:rgba(156,175,199,0.18);--field-muted-bg:rgba(20,32,48,0.9);--surface-muted:rgba(9,15,24,0.54);--surface-muted-strong:rgba(9,15,24,0.68);--gallery-tile-bg:linear-gradient(180deg,rgba(32,45,64,0.96),rgba(18,29,43,0.94)),var(--surface-muted);--gallery-tile-border:rgba(156,175,199,0.12);--gallery-tile-shadow:0 14px 26px rgba(0,0,0,0.22);--gallery-tile-border-hover:rgba(118,174,247,0.24);--gallery-tile-shadow-hover:0 18px 34px rgba(0,0,0,0.28);--dropzone-border:rgba(118,174,247,0.26);--dropzone-glow:rgba(73,130,204,0.2);--dropzone-glow-strong:rgba(73,130,204,0.3);--dropzone-tint:rgba(118,174,247,0.08);--dropzone-tint-strong:rgba(118,174,247,0.14);--overlay-backdrop:rgba(2,6,12,0.72);--overlay-backdrop-strong:rgba(2,6,12,0.82);--modal-surface:rgba(13,21,34,0.96);--panel-header-surface:rgba(18,28,44,0.82);--button-bg:linear-gradient(180deg,rgba(255,255,255,0.08),rgba(255,255,255,0) 44%),linear-gradient(180deg,#3e5d80 0%,#2b4563 52%,#1d3147 100%);--button-border:rgba(166,191,222,0.06);--button-border-bottom:transparent;--button-text:#f4f8ff;--button-text-shadow:0 1px 0 rgba(0,0,0,0.28);--button-sheen:none;--button-shadow:0 16px 30px rgba(0,0,0,0.28);--button-shadow-hover:0 20px 38px rgba(0,0,0,0.32);--button-shadow-active:0 10px 18px rgba(0,0,0,0.24);--button-ghost-bg:linear-gradient(180deg,rgba(46,63,87,0.96),rgba(28,41,58,0.94));--button-ghost-bg-hover:linear-gradient(180deg,rgba(56,75,101,0.98),rgba(33,48,68,0.96));--button-ghost-border:rgba(166,191,222,0.06);--button-ghost-border-bottom:transparent;--button-ghost-text:var(--ink);--button-ghost-sheen:none;--button-ghost-shadow:0 12px 24px rgba(0,0,0,0.22);--button-ghost-shadow-hover:0 16px 30px rgba(0,0,0,0.28);--button-ghost-shadow-active:0 8px 16px rgba(0,0,0,0.2);}*{box-sizing:border-box;}html,body{margin:0;min-height:100%;}html{scrollbar-gutter:stable;}body.is-night{background:radial-gradient(circle at top left,rgba(60,112,188,0.22),transparent 24%),radial-gradient(circle at 84% 16%,rgba(50,88,140,0.24),transparent 22%),radial-gradient(circle at bottom right,rgba(6,12,20,0.44),transparent 24%),linear-gradient(160deg,var(--bg) 0%,#0a1422 48%,var(--bg-strong) 100%);}body{font-family:"Montserrat","Segoe UI",sans-serif;font-size:13px;line-height:1.45;color:var(--ink);background:radial-gradient(circle at top left,rgba(47,111,181,0.2),transparent 24%),radial-gradient(circle at 84% 16%,rgba(112,157,214,0.18),transparent 22%),radial-gradient(circle at bottom right,rgba(22,38,58,0.12),transparent 24%),linear-gradient(160deg,var(--bg) 0%,#f8fbff 48%,var(--bg-strong) 100%);}body.lightbox-open{overflow:hidden;padding-right:var(--scroll-lock-offset,0px);}img{max-width:100%;display:block;}button,input{font:inherit;}button{position:relative;isolation:isolate;overflow:hidden;border:1px solid var(--button-border);border-bottom-color:var(--button-border-bottom);border-radius:999px;padding:10px 16px;background:var(--button-bg);color:var(--button-text);font-weight:600;letter-spacing:0.01em;text-shadow:var(--button-text-shadow);box-shadow:var(--button-shadow);cursor:pointer;transition:transform 180ms ease,box-shadow 180ms ease,border-color 180ms ease,background 180ms ease,opacity 160ms ease;}body.is-night button{border-width:0;}body.is-night .button-link{border-width:0;}button::before{content:"";position:absolute;inset:1px;border-radius:inherit;background:var(--button-sheen);opacity:0.9;pointer-events:none;z-index:-1;}button:hover{transform:translateY(-2px) scale(1.01);box-shadow:var(--button-shadow-hover);}button:active{transform:translateY(0);box-shadow:var(--button-shadow-active);}button:disabled{opacity:0.45;cursor:not-allowed;transform:none;box-shadow:none;}.button-ghost{--button-bg:var(--button-ghost-bg);--button-border:var(--button-ghost-border);--button-border-bottom:var(--button-ghost-border-bottom);--button-text:var(--button-ghost-text);--button-text-shadow:none;--button-sheen:var(--button-ghost-sheen);--button-shadow:var(--button-ghost-shadow);--button-shadow-hover:var(--button-ghost-shadow-hover);--button-shadow-active:var(--button-ghost-shadow-active);}.button-ghost:hover{--button-bg:var(--button-ghost-bg-hover);}.button-link{position:relative;isolation:isolate;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;min-height:41px;border:1px solid var(--button-border);border-bottom-color:var(--button-border-bottom);border-radius:999px;padding:10px 16px;background:var(--button-bg);color:var(--button-text);font-weight:600;line-height:1.1;text-align:center;text-decoration:none;text-shadow:var(--button-text-shadow);box-shadow:var(--button-shadow);}.button-link::before{content:"";position:absolute;inset:0;z-index:-1;background:var(--button-sheen);pointer-events:none;}.button-link:hover{box-shadow:var(--button-shadow-hover);transform:translateY(-1px);}.page-shell{width:min(1120px,calc(100% - 32px));margin:0 auto;padding:42px 0 64px;}.hero-card{padding:28px;border-radius:var(--radius-lg);background:linear-gradient(180deg,rgba(255,255,255,0.44),rgba(255,255,255,0) 38%),var(--card);border:0;box-shadow:var(--hero-shadow);backdrop-filter:blur(16px);}.panel{background:linear-gradient(180deg,rgba(255,255,255,0.42),rgba(255,255,255,0) 40%),var(--card-soft);border:0;border-radius:var(--radius-md);padding:22px;box-shadow:var(--panel-shadow);}.eyebrow,.meta{margin:0;color:var(--muted);font-size:0.84rem;}.flash{margin:0 0 18px;padding:14px 16px;border-radius:14px;}.flash-error{background:rgba(47,111,181,0.12);color:var(--accent-dark);border:1px solid rgba(47,111,181,0.14);}.form-stack{display:grid;gap:16px;width:100%;max-width:440px;}label{display:grid;gap:8px;font-size:0.9rem;}input[type="text"],input[type="password"]{width:100%;border-radius:12px;border:1px solid var(--field-border);padding:10px 12px;background:var(--field-bg);color:var(--ink);}code{font-family:Consolas,"Courier New",monospace;font-size:0.95em;}@media (max-width:720px){.page-shell{width:100%;padding:12px 12px 28px;}.hero-card{padding:18px;border-radius:22px;}.panel{padding:16px;border-radius:18px;}button{width:100%;justify-content:center;}.button-link{width:100%;}}