@layer properties{@supports ((-webkit-hyphens:none) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--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-ease:initial}}}@layer theme{:host,:root{--font-sans:"Poppins",ui-sans-serif,system-ui,sans-serif;--font-serif:"Crimson Text",Georgia,serif;--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--spacing:.25rem;--ease-in-out:cubic-bezier(.4,0,.2,1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--color-brand:#70ab53;--color-brand-dark:#306f35;--color-brand-darker:#324a1f;--color-forest:#2c411d;--color-beige:#f0ead8;--color-ink:#0d0d0d;--color-graphite:#232322;--color-stone:#5a5b5b;--color-mist:#a9a69e;--color-cloud:#f5f4f4;--color-line:#e0e0e0;--color-admin-bg:#f5f4f4;--color-status-ok:#047857;--color-status-ok-bg:#d1fae5;--color-status-warn:#d97706;--color-status-warn-bg:#fef3c7;--color-status-err:#b3261e;--color-status-err-bg:#fde7e6}}@layer base{*,:after,:before{box-sizing:border-box}body{background:var(--color-admin-bg);color:var(--color-ink);font-family:var(--font-sans);line-height:1.66}a{color:var(--color-brand);text-decoration:none}a:hover{color:#5a8942}::-moz-selection{background:#70ab53cc;color:#fff}::selection{background:#70ab53cc;color:#fff}}@layer components{.page{background:var(--color-admin-bg);color:var(--color-ink);font-family:var(--font-sans);min-height:100vh}.wrap{margin:0 auto;max-width:1080px;padding:24px}.wrap.wide{max-width:none}.top{justify-content:space-between;margin-bottom:8px}.top,.top-actions{align-items:center;display:flex}.top-actions{gap:14px}.back{color:var(--color-stone);font-size:14px;text-decoration:none}.back:hover{color:var(--color-brand-dark)}.pub{align-items:center;display:flex;font-size:14px;gap:6px}.h1{color:var(--color-forest);font-size:26px;letter-spacing:.01em;margin:6px 0 18px}.h1,.h2{font-weight:600;text-transform:uppercase}.h2{font-size:15px;letter-spacing:.02em;margin:0}.section_title{color:var(--color-forest);font-size:22px;font-weight:600;letter-spacing:.01em;margin:0 0 16px;text-transform:uppercase}.cols{display:grid;gap:18px;grid-template-columns:1fr 300px}@media(max-width:820px){.cols{grid-template-columns:1fr}}.panel{background:#fff;border:1px solid var(--color-line);border-radius:12px;padding:16px}.tabs{display:flex;gap:6px;margin-bottom:12px}.tab{background:#fff;border:1px solid var(--color-line);border-radius:8px;color:var(--color-graphite);cursor:pointer;font-family:inherit;font-size:13px;padding:6px 14px}.tab.on{background:var(--color-brand-dark);border-color:var(--color-brand-dark);color:#fff}.lbl{color:var(--color-stone);display:block;font-size:12px;margin:12px 0 4px}.inp{background:#fff;border:1px solid var(--color-line);border-radius:7px;color:var(--color-graphite);font-family:inherit;font-size:14px;padding:8px 10px;width:100%}.inp:focus{border-color:var(--color-brand);outline:none}.inp.mono{font-family:ui-monospace,monospace;font-size:13px}.inp.ta,.ta{resize:vertical}.hint{color:var(--color-mist);font-size:11px;margin:4px 0 0}.btn{background:#fff;border:1px solid var(--color-line);border-radius:50px;color:var(--color-graphite);cursor:pointer;display:inline-block;font:600 13px/1 var(--font-sans);letter-spacing:.03em;padding:10px 22px;text-decoration:none;text-transform:uppercase;transition:background .2s,color .2s,transform .2s,border-color .2s}.btn:hover{background:var(--color-cloud)}.btn.primary{background:var(--color-brand);border-color:var(--color-brand);color:#fff}.btn.primary:hover{background:#272727;border-color:#272727;transform:scale(1.04)}.btn.primary:active{background:#000;transform:scale(.98)}.btn.xs{font-size:11px;padding:5px 12px}.btn.ok{background:var(--color-status-ok-bg);border-color:var(--color-status-ok-bg);color:var(--color-status-ok)}.btn.warn{background:var(--color-status-warn-bg);border-color:var(--color-status-warn-bg);color:var(--color-status-warn)}.btn:disabled{cursor:default;opacity:.6}.btn:disabled:hover{transform:none}.toast{background:var(--color-forest);border-radius:10px;bottom:24px;color:#fff;font-size:14px;left:50%;padding:10px 18px;position:fixed;transform:translate(-50%);z-index:70}.state{color:var(--color-stone);padding:40px 0;text-align:center}.stats{display:flex;flex-wrap:wrap;gap:14px;margin-bottom:18px}.stat{background:#fff;border:1px solid var(--color-line);border-radius:12px;padding:12px 22px;text-align:center}.stat-n{font-size:24px;font-weight:700}.stat-l{color:var(--color-stone);font-size:12px}.toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:10px;margin-bottom:16px}.inp.grow{flex:1;min-width:200px}.grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}.grid .card{background:#fff;border:1px solid var(--color-line);border-radius:12px;display:flex;flex-direction:column;overflow:hidden;transition:box-shadow .2s,transform .2s,border-color .2s}.grid .card:hover{border-color:var(--color-brand);box-shadow:0 10px 28px #2c411d1a;transform:translateY(-2px)}.grid .card.hidden{opacity:.62}.grid .thumb{align-items:center;aspect-ratio:4/3;background:var(--color-cloud);display:flex;justify-content:center;overflow:hidden;position:relative}.grid .thumb img{height:100%;-o-object-fit:cover;object-fit:cover;width:100%}.grid .thumb .thumb-label{align-items:center;background:#0d0d0d6b;color:#fff;display:flex;font:600 12px/1 var(--font-sans);inset:0;justify-content:center;letter-spacing:.06em;opacity:0;position:absolute;text-decoration:none;text-transform:uppercase;transition:opacity .2s}.grid .card:hover .thumb-label{opacity:1}.grid .noimg{color:var(--color-mist);font-size:22px}.grid .body{padding:10px 12px 12px}.grid .meta{align-items:center;color:var(--color-mist);display:flex;flex-wrap:wrap;font-size:11px;gap:6px;margin-bottom:4px}.grid .chip{background:#e7efe2;border-radius:10px;color:var(--color-brand-dark);padding:1px 8px}.grid .dim{font-variant-numeric:tabular-nums}.grid .imgc{margin-left:auto}.grid .title{font-size:14px;font-weight:600;line-height:1.3;min-height:2.4em}.grid .row-actions{display:flex;gap:6px;margin-top:10px}.pager{align-items:center;display:flex;gap:8px;justify-content:center;margin-top:18px}}@layer utilities{.visible{visibility:visible}.fixed{position:fixed}.relative{position:relative}.static{position:static}.top-5{top:calc(var(--spacing)*5)}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.\!hidden{display:none!important}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.flex-shrink{flex-shrink:1}.grow{flex-grow:1}.border-collapse{border-collapse:collapse}.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-wrap{flex-wrap:wrap}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.uppercase{text-transform:uppercase}.italic{font-style:italic}.underline{text-decoration-line:underline}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.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-duration:var(--tw-duration,var(--default-transition-duration));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,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function))}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}}@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-border-style{syntax:"*";inherits:false;initial-value:solid}@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-ease{syntax:"*";inherits:false}.pwa-install[data-v-edd3d334]{background:none;border:0;color:#fff;cursor:pointer;font:600 12px/1 var(--font-sans);letter-spacing:.04em;padding:0;text-align:left;text-transform:uppercase;transition:color .15s}.pwa-install[data-v-edd3d334]:hover{color:var(--color-brand)}.pwa-install-hint[data-v-edd3d334]{color:var(--color-mist);font:400 11px/1.5 var(--font-sans);max-width:220px}.portal-footer[data-v-cf179be8]{background:var(--color-ink);color:#fff;margin-top:56px}.pf-inner[data-v-cf179be8]{align-items:flex-start;display:flex;flex-wrap:wrap;gap:48px;margin:0 auto;max-width:1080px;padding:40px 28px 24px}.pf-brand[data-v-cf179be8]{flex:1 1 320px;min-width:260px}.pf-logo[data-v-cf179be8]{height:30px;margin-bottom:14px;width:auto}.pf-blurb[data-v-cf179be8]{color:var(--color-mist);font-size:13px;line-height:1.6;margin:0 0 16px;max-width:460px}.pf-socials[data-v-cf179be8]{display:flex;gap:10px;list-style:none;margin:0;padding:0}.pf-socials a[data-v-cf179be8]{align-items:center;border:1px solid hsla(0,0%,100%,.2);border-radius:50%;color:var(--color-mist);display:inline-flex;height:34px;justify-content:center;transition:color .15s,border-color .15s,background .15s;width:34px}.pf-socials a[data-v-cf179be8]:hover{background:var(--color-brand);border-color:var(--color-brand);color:#fff}.pf-nav[data-v-cf179be8]{display:flex;flex-direction:column;gap:10px;padding-top:4px}.pf-nav a[data-v-cf179be8]{color:#fff;font:600 12px/1 var(--font-sans);letter-spacing:.04em;text-decoration:none;text-transform:uppercase;transition:color .15s}.pf-nav a[data-v-cf179be8]:hover{color:var(--color-brand)}.pf-copy[data-v-cf179be8]{border-top:1px solid hsla(0,0%,100%,.12);color:var(--color-mist);font-size:12px;padding:16px 28px;text-align:center}
