:root{--olive:#173b34;--ivory:#f8f5ef;--gold:#c9a15a;--charcoal:#202521;--sage:#8b9685;--brown:#7a3f58;--paper:#f3f0ea;--white:#fffdf9;--line:#d8d4cb;--muted:#676c65;--danger:#9b4045;--serif:"DM Serif Display",Georgia,serif;--sans:"Manrope",Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;color:var(--charcoal);background:var(--paper);font:14px/1.55 var(--sans)}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{color:inherit}.admin-shell{min-height:100vh;display:grid;grid-template-columns:250px minmax(0,1fr)}.admin-sidebar{position:sticky;top:0;height:100vh;padding:28px 20px;display:flex;flex-direction:column;color:var(--ivory);background:var(--charcoal)}.admin-brand{padding:0 10px 27px;border-bottom:1px solid rgba(246,255,232,.15)}.admin-brand span,.admin-brand strong{display:block}.admin-brand span{margin-bottom:5px;color:var(--gold);font-size:10px;text-transform:uppercase;letter-spacing:.12em}.admin-brand strong{font:600 23px/1.1 var(--serif)}.admin-sidebar nav{display:grid;gap:5px;margin-top:25px}.admin-sidebar nav a{height:48px;padding:0 12px;display:flex;align-items:center;gap:13px;border-radius:8px;color:rgba(246,255,232,.66);font-weight:500}.admin-sidebar nav a span{width:22px;text-align:center}.admin-sidebar nav a:hover,.admin-sidebar nav a[aria-current="page"]{color:var(--charcoal);background:var(--gold)}.sidebar-bottom{margin-top:auto;display:grid;gap:11px;padding:20px 10px 0;border-top:1px solid rgba(246,255,232,.15)}.sidebar-bottom a{color:rgba(246,255,232,.66);font-size:13px}.admin-workspace{min-width:0}.admin-topbar{position:sticky;z-index:20;top:0;height:76px;padding:0 clamp(22px,4vw,48px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:rgba(255,255,255,.94);backdrop-filter:blur(12px)}.admin-topbar span,.admin-topbar strong{display:block}.admin-topbar span{color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.1em}.admin-topbar strong{font-size:16px}.admin-view{padding:9px 13px;border:1px solid var(--line);border-radius:8px;background:white;font-size:12px;font-weight:600}.admin-main{width:min(1180px,calc(100% - 48px));margin:0 auto;padding:42px 0 100px}.admin-flash{margin-bottom:22px;padding:13px 16px;border-radius:8px;color:#2c4934;background:#e6f2e4;border:1px solid #bdd3bd}.admin-flash.error{color:#743939;background:#f8e8e8;border-color:#e7c1c1}.admin-welcome,.admin-page-head{margin-bottom:34px;display:flex;align-items:flex-end;justify-content:space-between;gap:30px}.admin-welcome h1,.admin-page-head h1{margin:0;font:600 clamp(38px,5vw,58px)/1 var(--serif)}.admin-welcome p,.admin-page-head p{max-width:600px;margin:11px 0 0;color:var(--muted)}.admin-back{display:inline-block;margin-bottom:16px;font-size:13px;font-weight:600}.admin-button{min-height:44px;display:inline-flex;align-items:center;justify-content:center;padding:0 18px;border:1px solid var(--olive);border-radius:8px;color:white;background:var(--olive);font-weight:600;cursor:pointer}.admin-button:hover{background:var(--charcoal);border-color:var(--charcoal)}.admin-button.small{min-height:38px;padding:0 14px;font-size:12px}.stat-grid{margin-bottom:24px;display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.stat-card{min-height:175px;padding:24px;display:flex;flex-direction:column;border:1px solid var(--line);border-radius:8px;background:white;transition:transform .2s,box-shadow .2s}.stat-card:hover{transform:translateY(-2px);box-shadow:0 16px 38px rgba(56,57,55,.08)}.stat-card strong{font:600 50px/1 var(--serif);color:var(--olive)}.stat-card span{margin-top:auto;font-weight:600}.stat-card small{margin-top:4px;color:var(--muted)}.admin-columns{display:grid;grid-template-columns:1.25fr .75fr;gap:24px}.admin-panel{margin-bottom:24px;padding:26px;border:1px solid var(--line);border-radius:8px;background:white}.panel-heading{margin-bottom:22px;display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.panel-heading h2{margin:0;font:600 27px/1.1 var(--serif)}.panel-heading p{margin:5px 0 0;color:var(--muted)}.panel-heading>a{font-size:12px;font-weight:600}.compact-list{display:grid}.compact-list>a{display:grid;grid-template-columns:54px 1fr auto;align-items:center;gap:13px;padding:11px 0;border-bottom:1px solid var(--line)}.compact-list>a:last-child{border-bottom:0}.compact-list img{width:54px;height:54px;border-radius:8px;object-fit:cover}.compact-list span strong,.compact-list span small{display:block}.compact-list span small{margin-top:3px;color:var(--muted);font-size:11px}.quick-panel>a{min-height:53px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);font-weight:600}.quick-panel>a:last-child{border-bottom:0}.quick-panel>a b{color:var(--olive);font-size:20px}.table-head{padding:0 10px 10px;display:grid;grid-template-columns:minmax(280px,1fr) 120px 110px 130px;gap:16px;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.08em}.event-admin-list{display:grid}.event-admin-list article{padding:13px 10px;display:grid;grid-template-columns:64px minmax(200px,1fr) 120px 110px 130px;align-items:center;gap:16px;border-top:1px solid var(--line)}.event-admin-list img{width:64px;height:56px;border-radius:8px;object-fit:cover}.event-admin-title strong,.event-admin-title small{display:block}.event-admin-title small{margin-top:3px;color:var(--muted);font-size:11px}.event-admin-list time{font-size:12px}.publish-state{width:fit-content;padding:5px 8px;border-radius:6px;color:#735c2c;background:#f5ecd8;font-size:10px;font-weight:600}.publish-state.live{color:#35533c;background:#e5efe3}.table-actions{display:flex;gap:10px;font-size:11px;font-weight:600}.table-actions form{margin:0}.table-actions button{padding:0;border:0;color:var(--danger);background:transparent;cursor:pointer}.editor-layout{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:24px;align-items:start}.editor-side{position:sticky;top:100px}.field{margin-bottom:20px}.field label{display:block;margin-bottom:7px;font-size:12px;font-weight:600}.field input,.field textarea,.field select{width:100%;padding:11px 12px;border:1px solid #cfd1c9;border-radius:8px;color:var(--charcoal);background:white;outline:0}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--olive);box-shadow:0 0 0 3px rgba(98,107,83,.12)}.field textarea{resize:vertical}.field small{display:block;margin-top:6px;color:var(--muted);font-size:11px}.editor-preview{width:100%;max-height:330px;margin-bottom:12px;border-radius:8px;object-fit:cover}.switch-row{display:flex;align-items:center;justify-content:space-between;gap:20px}.switch-row span strong,.switch-row span small{display:block}.switch-row span small{color:var(--muted)}.switch-row input{width:20px;height:20px}.editor-actions{display:grid;gap:10px}.editor-actions>a{text-align:center;font-size:12px;font-weight:600}.upload-panel{scroll-margin-top:100px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.portfolio-admin-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.portfolio-admin-card{overflow:hidden;border:1px solid var(--line);border-radius:8px;background:white}.portfolio-admin-card>img{width:100%;aspect-ratio:4/3;object-fit:cover}.portfolio-admin-card form{padding:18px}.card-fields{display:grid;grid-template-columns:1.3fr .7fr;gap:12px}.card-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}.text-danger{padding:8px;border:0;color:var(--danger);background:transparent;font-size:12px;font-weight:600;cursor:pointer}.settings-section{scroll-margin-top:100px}.settings-section+.settings-section{margin-top:28px}.logo-settings{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:24px}.logo-settings h3{margin:0 0 10px;font-size:14px}.logo-preview{height:150px;margin-bottom:18px;display:grid;place-items:center;border:1px dashed #bfc1b8;border-radius:8px;background:var(--ivory)}.logo-preview.dark{background:var(--charcoal)}.logo-preview img{max-width:80%;max-height:100px;object-fit:contain}.logo-preview span{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.1em}.logo-preview.dark span{color:rgba(246,255,232,.65)}.plain-check{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:12px}.login-page{background:var(--ivory)}.login-layout{min-height:100vh;display:grid;grid-template-columns:1.1fr .9fr}.login-visual{position:relative;min-height:100vh;overflow:hidden}.login-visual img{width:100%;height:100%;object-fit:cover}.login-visual::after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 35%,rgba(56,57,55,.82))}.login-visual>div{position:absolute;z-index:1;right:45px;bottom:42px;left:45px;color:white}.login-visual h1{margin:0;font:600 clamp(50px,7vw,92px)/.95 var(--serif)}.login-visual p{margin:10px 0 0}.login-panel{display:grid;place-items:center;padding:30px}.login-card{width:min(420px,100%)}.login-logo-slot{width:180px;height:58px;display:grid;place-items:center;border:1px dashed rgba(56,57,55,.4);border-radius:8px;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.1em}.login-card h2{margin:35px 0 8px;font:600 42px/1 var(--serif)}.login-card>p{margin-bottom:26px;color:var(--muted)}.login-card form label{display:block;margin:15px 0 6px;font-weight:600;font-size:12px}.login-card form input{width:100%;height:48px;padding:0 12px;border:1px solid #c8cbc1;border-radius:8px}.login-card .admin-button{width:100%;margin-top:22px}.login-back{display:block;margin-top:20px;font-size:12px;font-weight:600}.login-card>small{display:block;margin-top:35px;color:var(--muted)}.form-error{padding:11px 13px;border-radius:8px;color:#783d3d;background:#f5dddd}.admin-mobile-nav{display:none}@media(max-width:1050px){.admin-shell{grid-template-columns:210px minmax(0,1fr)}.admin-columns{grid-template-columns:1fr}.event-admin-list article{grid-template-columns:58px minmax(180px,1fr) 100px 105px}.table-head{grid-template-columns:minmax(238px,1fr) 100px 105px}.table-actions{grid-column:2/-1;justify-content:flex-end}.portfolio-admin-grid{grid-template-columns:1fr 1fr}}@media(max-width:760px){body{padding-bottom:72px}.admin-shell{display:block}.admin-sidebar{display:none}.admin-topbar{height:68px;padding:0 16px}.admin-view{font-size:11px}.admin-main{width:calc(100% - 28px);padding:28px 0 80px}.admin-welcome,.admin-page-head{align-items:flex-start;flex-direction:column}.admin-welcome .admin-button,.admin-page-head .admin-button{width:100%}.stat-grid{grid-template-columns:1fr}.stat-card{min-height:140px}.admin-panel{padding:18px}.table-head{display:none}.event-admin-list article{grid-template-columns:64px 1fr;gap:12px;padding:14px 0}.event-admin-list time,.publish-state{grid-column:2}.table-actions{grid-column:2;justify-content:flex-start}.editor-layout{grid-template-columns:1fr}.editor-side{position:static}.form-grid,.logo-settings{grid-template-columns:1fr}.portfolio-admin-grid{grid-template-columns:1fr}.admin-mobile-nav{position:fixed;z-index:50;right:0;bottom:0;left:0;height:66px;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);background:rgba(255,255,255,.96);backdrop-filter:blur(12px)}.admin-mobile-nav a{display:grid;place-items:center;align-content:center;gap:2px;color:var(--muted);font-size:9px}.admin-mobile-nav a span{font-size:17px}.admin-mobile-nav a[aria-current="page"]{color:var(--olive);background:var(--ivory)}.login-layout{grid-template-columns:1fr}.login-visual{display:none}.login-panel{min-height:100vh;padding:24px}.login-card h2{font-size:38px}}@media(max-width:390px){.card-fields{grid-template-columns:1fr}.admin-topbar span{display:none}}.admin-brand small{display:block;margin-top:7px;color:rgba(255,255,255,.45);font-size:9px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.login-wordmark{display:block;color:var(--olive);font:400 35px/1 var(--serif)}.login-since{display:block!important;margin-top:7px!important;color:var(--gold)!important;font-size:9px!important;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.login-card>.login-since+h2{margin-top:34px}.admin-sidebar{background:#102c27}.admin-topbar{background:rgba(255,253,249,.95)}.login-page{background:var(--paper)}.login-visual img{object-position:center 64%}
