@import url("https://fonts.googleapis.com/css2?family=Fraunces:wght@400;600;700&family=Space+Grotesk:wght@400;500;600;700&display=swap");:root{color-scheme:light;--bg:#f6f1ea;--bg-alt:#efe4d6;--surface:hsla(0,0%,100%,.78);--surface-strong:#fff8f0;--ink:#1c1b19;--ink-soft:#3f3b36;--muted:#6f6a63;--accent:#f0a24a;--accent-2:#2f6f6b;--accent-3:#d46a61;--stroke:rgba(32,30,27,.14);--shadow:0 24px 60px rgba(24,22,20,.18);--radius-lg:22px;--radius-md:14px;--radius-sm:10px}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Space Grotesk,Segoe UI,sans-serif;color:var(--ink);background-color:var(--bg);min-height:100vh;position:relative;overflow-x:hidden;background-image:radial-gradient(1100px 700px at 10% -20%,#f8d7b5 0,transparent 70%),radial-gradient(900px 600px at 100% 10%,#cfe7d6 0,transparent 65%),linear-gradient(120deg,hsla(0,0%,100%,.6),hsla(0,0%,100%,0))}body:before{content:"";position:fixed;inset:0;background-image:linear-gradient(rgba(0,0,0,.04) 1px,transparent 0),linear-gradient(90deg,rgba(0,0,0,.04) 1px,transparent 0);background-size:80px 80px;opacity:.4;pointer-events:none;z-index:-1}a{color:inherit;text-decoration:none}h1,h2,h3{font-family:Fraunces,Georgia,serif;font-weight:600;letter-spacing:-.02em}img{max-width:100%;border-radius:var(--radius-sm)}code{font-family:SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.85rem;background:rgba(47,111,107,.12);padding:4px 8px;border-radius:999px}button,input,select,textarea{font:inherit}input,select,textarea{border:1px solid var(--stroke);border-radius:var(--radius-sm);padding:10px 12px;background:#fff;color:var(--ink)}input:focus,select:focus,textarea:focus{outline:2px solid rgba(47,111,107,.3);border-color:rgba(47,111,107,.6)}.app-shell{display:grid;grid-template-columns:260px 1fr;grid-gap:24px;gap:24px;padding:24px;min-height:100vh}.side-nav{position:-webkit-sticky;position:sticky;top:24px;align-self:start;background:var(--surface);border-radius:var(--radius-lg);padding:24px;border:1px solid var(--stroke);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.brand{display:flex;gap:12px;align-items:center;margin-bottom:32px}.brand-mark{width:44px;height:44px;border-radius:14px;background:linear-gradient(135deg,var(--accent),var(--accent-3));color:#fff;display:grid;place-items:center;font-weight:700}.brand-name{display:block;font-size:1.2rem}.brand-tag{font-size:.75rem;color:var(--muted)}.nav-links{display:flex;flex-direction:column;gap:10px}.nav-link{padding:10px 14px;border-radius:var(--radius-md);transition:all .2s ease;color:var(--ink-soft);background:transparent}.nav-link:hover{background:rgba(47,111,107,.08);color:var(--ink)}.nav-link.active{background:rgba(47,111,107,.16);color:var(--ink);font-weight:600}.app-main{display:flex;flex-direction:column;gap:24px}.top-bar{display:flex;justify-content:space-between;align-items:center;padding:18px 24px;border-radius:var(--radius-lg);border:1px solid var(--stroke);background:var(--surface);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.top-title{font-size:1.1rem;font-weight:600}.top-subtitle{color:var(--muted);font-size:.9rem}.top-actions{display:flex;align-items:center;gap:12px}.role-pill{padding:6px 12px;border-radius:999px;background:rgba(47,111,107,.15);color:var(--accent-2);text-transform:uppercase;font-size:.7rem;font-weight:600;letter-spacing:.08em}.page{display:flex;flex-direction:column;gap:24px}.page-header{display:flex;justify-content:space-between;align-items:flex-end;gap:16px}.page-header h1{font-size:2.1rem}.page-subtitle{color:var(--muted);max-width:600px}.page-actions{display:flex;gap:12px}.card{background:var(--surface);border-radius:var(--radius-lg);border:1px solid var(--stroke);padding:20px;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.card-subtle{background:hsla(0,0%,100%,.6);box-shadow:none}.card-highlight{border:1px solid rgba(240,162,74,.4);box-shadow:0 20px 50px rgba(240,162,74,.25)}.qr-panel{display:flex;flex-direction:column;gap:12px}.qr-preview{display:flex;align-items:center;justify-content:center;padding:16px;border-radius:var(--radius-md);border:1px dashed rgba(31,27,24,.2);background:hsla(0,0%,100%,.8)}.qr-preview img{max-width:100%;height:auto;image-rendering:pixelated}.qr-preview canvas{border-radius:12px}.event-card{display:grid;grid-template-columns:120px 1fr auto;grid-gap:16px;gap:16px;align-items:center;padding:12px;border-radius:var(--radius-md);border:1px solid rgba(0,0,0,.06);background:hsla(0,0%,100%,.7)}.event-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:16px;gap:16px}.event-card-grid{grid-template-columns:1fr;align-items:start;gap:12px}.event-thumb-button{border:none;padding:0;background:transparent;cursor:pointer;text-align:left}.event-thumb{width:100%;height:160px;border-radius:12px;object-fit:cover;border:1px solid rgba(0,0,0,.08);background:#fff}.event-thumb-empty{display:flex;align-items:center;justify-content:center;font-size:.75rem;color:var(--muted)}.event-meta{display:flex;flex-direction:column;gap:6px}.event-title{font-weight:600}.event-tags{flex-wrap:wrap}.event-actions,.event-tags{display:flex;gap:8px;align-items:center}.event-header{justify-content:space-between;gap:12px}.event-header,.modal-backdrop{display:flex;align-items:center}.modal-backdrop{position:fixed;inset:0;background:rgba(10,8,6,.45);justify-content:center;padding:24px;z-index:50}.modal-card{background:var(--surface);border-radius:var(--radius-lg);border:1px solid var(--stroke);box-shadow:0 30px 60px rgba(0,0,0,.25);max-width:min(900px,90vw);width:100%;padding:16px;display:grid;grid-gap:12px;gap:12px}.modal-card img{width:100%;height:auto;border-radius:12px;border:1px solid rgba(0,0,0,.08)}.modal-header{display:flex;align-items:center;justify-content:space-between}.qr-meta{display:grid;grid-gap:6px;gap:6px;font-size:.85rem;color:var(--ink-soft)}.qr-meta strong{color:var(--ink);font-weight:600}.btn{border:none;border-radius:999px;padding:10px 18px;cursor:pointer;font-weight:600;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.btn-md{font-size:.95rem}.btn-sm{font-size:.8rem;padding:8px 14px}.btn-primary{background:linear-gradient(120deg,var(--accent),var(--accent-3));color:#fff;box-shadow:0 14px 30px hsla(5,57%,61%,.35)}.btn-primary:hover{transform:translateY(-1px)}.btn-outline{background:transparent;border:1px solid rgba(47,111,107,.4);color:var(--accent-2)}.btn-outline:hover{background:rgba(47,111,107,.08)}.btn-ghost{background:rgba(31,27,24,.08);color:var(--ink)}.btn-danger{background:hsla(5,57%,61%,.18);color:var(--accent-3)}.field{display:flex;flex-direction:column;gap:6px}.field-label{font-weight:600;font-size:.9rem}.field-hint{color:var(--muted);font-size:.8rem}.field-error{color:var(--accent-3);font-size:.8rem}.tag{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;font-size:.75rem;font-weight:600}.tag-neutral{background:rgba(31,27,24,.08);color:var(--ink-soft)}.tag-accent{background:rgba(47,111,107,.18);color:var(--accent-2)}.tag-alert{background:hsla(5,57%,61%,.2);color:var(--accent-3)}.grid{display:grid;grid-gap:16px;gap:16px}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.stack{display:flex;flex-direction:column;gap:16px}.table{display:grid;grid-gap:8px;gap:8px}.matrix,.matrix-row{display:grid;grid-gap:12px;gap:12px}.matrix-row{align-items:center;padding:12px;border-radius:var(--radius-md);background:hsla(0,0%,100%,.65);border:1px solid rgba(0,0,0,.05)}.matrix-head{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.matrix-cell{display:flex;align-items:center;gap:8px;font-size:.8rem;color:var(--ink-soft)}.table-row{display:grid;grid-template-columns:1.6fr 1fr 1fr auto;grid-gap:12px;gap:12px;align-items:center;padding:12px;border-radius:var(--radius-md);background:hsla(0,0%,100%,.7);border:1px solid rgba(0,0,0,.05)}.table-head{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.section-title{font-size:1.1rem;margin-bottom:4px}.stat{display:flex;flex-direction:column;gap:8px}.stat-value{font-size:2rem}.stat-label{color:var(--muted);font-size:.85rem}.stagger>*{animation:rise .6s ease forwards;opacity:0}.stagger>:first-child{animation-delay:.05s}.stagger>:nth-child(2){animation-delay:.12s}.stagger>:nth-child(3){animation-delay:.18s}.stagger>:nth-child(4){animation-delay:.24s}@keyframes rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (max-width:1100px){.app-shell{grid-template-columns:1fr}.side-nav{position:relative}.nav-links{flex-direction:row;flex-wrap:wrap}.nav-link{flex:1 1 40%}}@media (max-width:980px){.event-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:720px){.top-bar{gap:12px}.page-header,.top-bar{flex-direction:column;align-items:flex-start}.event-card,.grid-2,.grid-3,.grid-4,.table-row{grid-template-columns:1fr}.event-card{align-items:flex-start}.event-actions{flex-direction:row;flex-wrap:wrap}.event-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.event-header{flex-direction:column;align-items:flex-start}}@media (max-width:640px){.event-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.stagger>*{animation:none;opacity:1}.btn{transition:none}}