:root{font-family:Inter,Segoe UI,sans-serif;color:#283b33;background:#f8f9f6;font-synthesis:none;font-weight:400;--green: #244d3d;--muted: #65715d;--line: #e5e8df;--gold: #a58443}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button,a,input,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}a{color:inherit;text-decoration:none}button{color:inherit}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #bba668;outline-offset:4px}input:focus,textarea:focus{outline:2px solid #648673;outline-offset:1px}h1,h2,h3,p{margin:0}h1,h2{font-family:Georgia,Times New Roman,serif;font-weight:400}h1{font-size:38px;letter-spacing:-1px}h2{font-size:24px}small{font-size:12px;color:var(--muted)}.muted{color:#6e776e;line-height:1.6;font-size:14px}.eyebrow{font-size:10px;letter-spacing:2.2px;font-weight:650;color:#8b917f}.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:1px solid transparent;border-radius:7px;padding:12px 17px;font-size:13px;font-weight:600;transition:background .15s;white-space:nowrap}.primary{background:var(--green);color:#fff}.primary:hover:not(:disabled){background:#17392c}.secondary{background:#fff;border-color:#dfe4db;color:#3e5145}.secondary:hover:not(:disabled){background:#f1f4ee}.destructive{background:#9b3f35;color:#fff}.full{width:100%}.icon-button{display:inline-flex;align-items:center;justify-content:center;padding:8px;border:0;background:transparent;border-radius:6px}.icon-button:hover{background:#e9eee6}.danger{color:#a4493d}.text-link{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:#3d614b;padding:0;border:0;background:none}.text-link:hover{text-decoration:underline}label{display:block;font-size:12px;font-weight:600;color:#4e5d51}input:not([type=checkbox]),textarea{display:block;width:100%;border:1px solid #dfe3d9;border-radius:6px;background:#fff;padding:11px 12px;color:#344338;margin-top:7px;font-size:13px;line-height:1.5}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#a1a69e}form{display:grid;gap:19px}form label small{display:block;margin-top:6px}.brand{display:flex;gap:11px;align-items:center}.brand img{width:43px;height:43px;border-radius:50%;mix-blend-mode:multiply}.brand strong{font-family:Georgia,serif;font-size:29px;font-weight:400;letter-spacing:-1px;line-height:1.1}.brand-dot{color:#b69c60}.brand>div>span{display:block;font-size:8px;letter-spacing:2px;margin-top:6px;color:#869080}.app-shell{display:flex;min-height:100vh}.sidebar{width:244px;flex-shrink:0;background:#fff;border-right:1px solid var(--line);padding:32px 20px 0;position:fixed;height:100vh;display:flex;flex-direction:column}.sidebar>.brand{margin:0 9px 49px}.sidebar-section{font-size:9px;letter-spacing:1.4px;color:#92998c;padding:0 13px;margin-bottom:13px}.admin-label{margin-top:34px}.nav-item{display:flex;gap:12px;align-items:center;width:100%;padding:12px 14px;border:none;background:transparent;border-radius:6px;font-size:13px;color:#6d776c;text-align:left;margin-bottom:6px}.nav-item.active{background:#edf2e9;color:#31553f;font-weight:650}.nav-item>span{margin-left:auto;font-size:10px;background:#dae5d4;padding:3px 7px;border-radius:4px}.sidebar-note{margin:auto 13px 35px;padding-top:50px;color:#829077}.sidebar-note p{font-size:13px;line-height:1.8;margin:12px 0;color:#697960}.sidebar-note strong{font-weight:500}.sidebar-note>span{font-size:10px;letter-spacing:.6px;color:#9ba191}.profile{display:flex;gap:9px;align-items:center;padding:21px 0;border-top:1px solid var(--line)}.profile>div:nth-child(2){min-width:0;flex:1}.profile strong{display:block;font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile small{font-size:10px;display:block;margin-top:5px}.avatar{width:33px;height:33px;border-radius:50%;background:#ece9da;color:#807744;display:grid;place-items:center;font-family:Georgia,serif}.workspace{margin-left:244px;min-width:0;flex:1}.topbar{height:67px;border-bottom:1px solid var(--line);padding:0 43px;display:flex;justify-content:space-between;align-items:center;font-size:11px;color:#83907f;background:#fcfcfa}.top-tag{display:flex;align-items:center;gap:7px;font-size:10px}.content{max-width:1440px;margin:auto;padding:43px 44px 22px}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:33px}.page-heading h1{margin:10px 0}.page-heading p{font-size:13px;color:#7a8475;line-height:1.6}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:24px}.stats>div{display:flex;align-items:center;gap:18px;background:#fff;border:1px solid var(--line);border-radius:9px;padding:22px}.stat-icon{display:grid;place-items:center;background:#edf2e8;color:#648261;width:47px;height:47px;border-radius:9px}.stat-icon.amber{background:#f7f1e4;color:#b79955}.stat-icon.pale{background:#ecf2ed;color:#7b9884}.stats strong{font-family:Georgia,serif;display:block;font-size:29px;line-height:1.1;font-weight:400}.stats div div span{display:block;margin-top:8px;font-size:11px;color:#899082}.retention-banner{display:flex;align-items:center;gap:15px;padding:17px 20px;border:1px solid #e6e9d9;background:#f2f4e9;border-radius:8px;margin-bottom:32px}.banner-icon{color:#91a077;display:flex}.retention-banner p{flex:1}.retention-banner strong{display:block;font-size:12px;font-weight:600;color:#5e704c}.retention-banner p>span{display:block;font-size:11px;color:#889075;line-height:1.6;margin-top:4px}.pill{border:1px solid #dce2cd;border-radius:6px;padding:6px 10px;color:#8c9974;font-size:11px}.collection-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.collection-heading h2{font-size:24px}.collection-heading h2>span{font-family:Segoe UI,sans-serif;font-size:11px;background:#ecefe7;color:#8b967d;border-radius:5px;padding:3px 7px;margin-left:8px;vertical-align:middle}.search{width:235px;display:flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:6px;padding:0 11px;background:#fff;color:#9aa18f}.search input{padding:9px 0;border:0;margin:0;font-size:11px;outline:0}.search:focus-within{outline:2px solid #648673}.tabs{display:flex;gap:25px;border-bottom:1px solid var(--line);margin-bottom:23px}.tabs button{background:transparent;border:0;border-bottom:2px solid transparent;padding:0 0 12px;font-size:12px;color:#89917f}.tabs button.selected{color:#38593d;border-bottom-color:#4a6947;font-weight:600}.photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.photo-card{border:1px solid var(--line);border-radius:9px;overflow:hidden;background:#fff;transition:box-shadow .2s}.photo-card:hover{box-shadow:0 5px 22px #263e2b0b}.card-image{position:relative;width:100%;height:200px;border:0;padding:0;background:#e9e9e1;display:block;overflow:hidden}.card-image img{width:100%;height:100%;object-fit:contain;background:#e7e7df;transition:transform .3s}.card-image:hover img{transform:scale(1.03)}.zoom{position:absolute;right:12px;bottom:12px;background:#fffdf4da;color:#566346;border-radius:5px;padding:6px;display:flex;opacity:0;transition:opacity .2s}.card-image:hover .zoom,.card-image:focus .zoom{opacity:1}.placeholder-image{height:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:15px;color:#9ba08c;font-size:12px}.card-body{padding:17px}.badge{display:inline-flex;align-items:center;gap:5px;font-size:9px;padding:5px 7px;background:#f0f1ec;color:#7c8372;border-radius:4px;white-space:nowrap}.badge i{width:4px;height:4px;border-radius:50%;background:currentColor}.badge.gold{background:#f8f2e2;color:#a58a4f}.badge.green{background:#edf4e9;color:#6d8b55}.badge.red{background:#faebe7;color:#a66351}.card-body h3{font-family:Georgia,serif;font-size:18px;font-weight:400;margin:12px 0 9px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-body>p{font-size:11px;line-height:1.8;color:#8a907f;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:39px}.card-body footer{display:flex;justify-content:space-between;gap:6px;border-top:1px solid #eef0e8;margin-top:17px;padding-top:13px}.card-body footer .text-link{font-size:10px}.card-actions{display:inline-flex;align-items:center;gap:6px}.card-actions .icon-button{padding:5px}.text-link.danger{color:#a4493d}.card-body footer .text-link:first-child{color:#949b87;font-weight:400}.empty-state{padding:55px 24px;background:#fff;border:1px solid var(--line);border-radius:9px;text-align:center;min-height:360px}.empty-state h2{font-size:28px;margin:22px 0 11px}.empty-state p{color:#929985;font-size:13px;line-height:1.9}.empty-state .button{margin-top:24px}.empty-state>small{display:block;margin-top:14px;font-size:10px;color:#a0a78f}.empty-illustration{position:relative;height:95px;width:145px;margin:auto}.mini-photo{height:79px;width:100px;background:#f5f5eb;border:1px solid #dfe4d1;border-radius:6px;position:absolute;top:7px;left:12px;box-shadow:0 4px 10px #38472c08}.mini-photo.back{transform:rotate(-12deg)}.mini-photo.front{transform:rotate(8deg);left:36px;display:grid;place-items:center;color:#93a47a;background:#edf1e4;border:6px solid #fff;outline:1px solid #e1e6d6}.empty-illustration>span{position:absolute;right:0;top:0;background:#f5edda;padding:7px;color:#b39b63;border-radius:50%;display:flex}.empty-state.compact{min-height:200px;padding:30px}.page-footer{display:flex;justify-content:space-between;gap:12px;color:#a2aa98;font-size:9px;border-top:1px solid var(--line);margin-top:39px;padding-top:20px}.batch-toolbar{display:flex;align-items:center;gap:16px;margin-bottom:20px}.batch-toolbar>span{font-size:12px;color:var(--muted);flex:1}.pagination{display:flex;justify-content:center;gap:20px;align-items:center;margin-top:25px;font-size:12px}.modal{border:1px solid #e1e5da;border-radius:12px;padding:0;width:min(560px,calc(100vw - 32px));color:#304435;box-shadow:0 20px 100px #17291e26;max-height:90vh;background:#fff}.modal.wide{width:min(950px,calc(100vw - 32px))}.modal::backdrop{background:#18291e80;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.modal-head{display:flex;align-items:center;justify-content:space-between;padding:22px 26px;border-bottom:1px solid var(--line)}.modal-body{padding:24px 26px}.modal-body>p{font-size:13px;line-height:1.8}.modal-footer{padding:18px 26px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);gap:15px}.modal-footer>span{font-size:12px;color:var(--muted)}.dropzone{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;width:100%;padding:30px;background:#f8faf5;border:1px dashed #bdcab0;border-radius:8px;margin-top:20px;color:#6d825b}.dropzone strong{font-size:14px;font-weight:500;margin-top:5px}.dropzone>span{font-size:12px}.dropzone small{margin-top:6px;font-size:10px}.dropzone.drag{background:#eaf1e2;border-color:#486a35}.upload-list{margin-top:20px;display:grid;gap:15px}.upload-item{display:grid;grid-template-columns:65px 1fr 28px;gap:15px;padding:15px;border:1px solid var(--line);border-radius:7px}.upload-item img{width:65px;height:65px;object-fit:cover;border-radius:4px}.upload-item label{margin-top:12px;font-size:10px}.upload-item input,.upload-item textarea{font-size:12px;padding:8px}.upload-item>.icon-button{align-self:start}.file-line{display:flex;gap:12px;justify-content:space-between;font-size:11px}.file-line strong{overflow-wrap:anywhere}.file-line span{color:var(--muted);white-space:nowrap}.info-note{display:flex;gap:12px;background:#f3f5ee;border-radius:6px;padding:14px;margin-top:19px;font-size:11px;line-height:1.7;color:#7d896b}.info-note svg{flex-shrink:0;margin-top:2px}.error-box{background:#fff1ed;color:#a34f39;border:1px solid #f3d9cc;border-radius:6px;padding:12px;font-size:12px;line-height:1.5;margin:12px 0}.upload-progress{margin-top:16px;font-size:12px}.upload-progress progress{width:100%;accent-color:var(--green);margin-bottom:8px}.editor-grid{display:grid;grid-template-columns:1fr 1fr}.photo-stage{padding:24px;background:#f6f7f1}.photo-stage>img{width:100%;height:325px;object-fit:contain;background:#e8e9e0;border-radius:6px}.photo-meta{display:flex;justify-content:space-between;align-items:center;margin:14px 0;font-size:10px;color:#969d89;gap:8px}.photo-stage>.text-link{display:flex;justify-content:center;margin-top:14px}.photo-stage .fine-print{text-align:center;margin-top:18px}.editor-fields{padding:24px}.editor-fields>details{margin:16px 0;font-size:11px;color:#89967b}.editor-fields summary{cursor:pointer;padding:5px 0}.editor-fields details textarea{font-size:12px}.description-label{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:18px}.description-label>span{font-size:9px;display:flex;align-items:center;gap:4px;color:#b09a65}.description-text{font-size:13px;line-height:1.8;min-height:270px}.fine-print{font-size:10px;color:#929c86;line-height:1.7;margin-top:9px}.editor-tools{display:flex;justify-content:space-between;margin-top:16px;gap:10px}.suggestion{padding:10px;background:#f8f7f0;border-radius:6px}.suggestion p{line-height:1.8;margin:10px 0;white-space:pre-wrap}.empty-preview{height:325px;display:grid;place-content:center;justify-items:center;text-align:center;gap:15px;color:#a1aa91;font-size:12px}.toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%);display:flex;gap:12px;align-items:center;border:1px solid #ced9c0;background:#f8fff3;color:#49653a;border-radius:9px;padding:16px 20px;box-shadow:0 8px 28px #25352018;font-size:12px;z-index:20;max-width:90vw}.toast button{border:0;background:none;display:flex}.admin-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:25px}.panel{background:#fff;border:1px solid var(--line);border-radius:9px;padding:26px}.panel h2{margin-bottom:12px}.panel form{margin-top:20px}.admin-item{border-top:1px solid var(--line);padding-top:20px;margin-top:20px;display:flex;justify-content:space-between;gap:12px;align-items:center}.admin-item strong{display:block;font-size:13px}.admin-item small{display:block;margin:8px 0}.admin-actions{display:flex;flex-direction:column;gap:12px;align-items:end}.empty-inline{color:#939d86;font-size:13px;padding:30px 0}fieldset{border:1px solid var(--line);border-radius:6px;padding:14px}legend{font-size:12px}.checkbox{display:flex;gap:8px;align-items:center;margin-bottom:9px;font-size:12px}.checkbox:last-child{margin-bottom:0}.checkbox input{accent-color:var(--green)}.token-result{background:#f1f6ec;padding:14px;margin-top:20px;font-size:12px;border-radius:6px}.token-result textarea{word-break:break-all;font-family:monospace;margin:12px 0}.login{min-height:100vh;display:grid;grid-template-columns:1fr 1fr;background:#fcfcf8}.login-story{position:relative;background:#24483b;color:#e8eddd;min-height:100vh;padding:45px 60px;display:flex;flex-direction:column;overflow:hidden}.brand.light img{mix-blend-mode:normal;opacity:.88}.brand.light>div>span{color:#a8ba9a;font-size:7px;letter-spacing:1.6px}.story-body{margin:auto 0;position:relative;padding:80px 0}.story-body h1{font-size:clamp(38px,4vw,65px);line-height:1.16;letter-spacing:-1.7px;margin:24px 0}.light-text{color:#a8b695}.story-body>p{font-size:15px;color:#b2c0a3;line-height:1.7}.story-lines{display:flex;gap:10px;margin:40px 0}.story-lines span{height:2px;width:30px;background:#698266}.story-lines span:first-child{background:#b6a363;width:60px}.story-note{display:flex;gap:15px;align-items:center;margin-top:55px;color:#8fa786}.story-note p{font-size:12px;line-height:1.8}.login-story footer{font-size:10px;color:#88a180;letter-spacing:.5px}.login-form{display:grid;place-items:center;padding:60px}.login-form>div{max-width:355px;width:100%}.login-form h2{font-size:35px;margin:15px 0}.login-form form{margin-top:35px}.password-field{position:relative}.password-field input{padding-right:44px}.password-field .icon-button{position:absolute;right:4px;top:calc(50% + 3.5px);transform:translateY(-50%);color:#6b7a6d}.login-help{font-size:11px;line-height:1.8;color:#919c85;margin-top:26px}.login-help svg{vertical-align:middle;margin-right:5px}.loading-page{min-height:100vh;display:flex;align-items:center;justify-content:center;gap:14px;color:#718064;font-size:13px}.spin{animation:rotate 1.4s linear infinite}.pending-message{display:inline-flex;align-items:center;gap:8px}.pulse-dot{position:relative;flex-shrink:0;width:8px;height:8px;border-radius:50%;background:#b08a3e}.pulse-dot:after{content:"";position:absolute;inset:0;border-radius:50%;background:inherit;animation:pulse 1.6s ease-out infinite}@keyframes pulse{0%{transform:scale(1);opacity:.7}to{transform:scale(2.6);opacity:0}}@keyframes rotate{to{transform:rotate(360deg)}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(min-width:1550px){.card-image{height:240px}}@media(max-width:1150px){.sidebar{width:210px;padding:28px 14px 0}.workspace{margin-left:210px}.content{padding:30px 28px}.topbar{padding:0 28px}.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stats>div{padding:16px;gap:12px}.stat-icon{width:35px;height:35px}.stats div div span{font-size:10px}.page-heading h1{font-size:31px}.top-tag{display:none}.admin-grid{grid-template-columns:1fr}.login-story,.login-form{padding:35px}}@media(max-width:760px){.app-shell{display:block}.sidebar{position:static;width:100%;height:auto;padding:14px 18px;border-bottom:1px solid var(--line);border-right:none;display:grid;grid-template-columns:1fr auto;align-items:center}.sidebar>.brand{margin:0}.sidebar .brand img{width:34px;height:34px}.sidebar .brand strong{font-size:25px}.sidebar .brand>div>span{font-size:7px}.sidebar>.sidebar-section,.sidebar-note,.admin-label{display:none}.sidebar nav{display:flex;gap:4px;grid-column:1/-1;grid-row:2;margin-top:16px}.nav-item{font-size:11px;gap:6px;margin:0;padding:9px 10px;width:auto}.nav-item>span{display:none}.profile{border:0;padding:0;grid-column:2;grid-row:1}.profile .avatar,.profile>div:nth-child(2){display:none}.workspace{margin-left:0}.topbar{height:40px;padding:0 20px;font-size:9px}.content{padding:25px 18px}.page-heading{align-items:flex-start;flex-direction:column;gap:16px;margin-bottom:22px}.page-heading h1{font-size:31px}.page-heading p{font-size:12px}.eyebrow{font-size:8px}.stats{gap:8px}.stats>div{padding:14px 10px;display:block}.stat-icon{display:none}.stats strong{font-size:26px}.stats div div span{font-size:9px;line-height:1.5}.retention-banner{padding:12px;gap:10px;margin-bottom:25px}.retention-banner strong{font-size:11px}.retention-banner p>span{font-size:10px}.retention-banner .pill{display:none}.collection-heading{flex-wrap:wrap}.collection-heading h2{font-size:22px}.search{width:100%}.tabs{gap:20px}.tabs button{font-size:10px}.photo-grid{gap:14px}.card-image{height:150px}.card-body{padding:12px}.card-body h3{font-size:16px}.card-body footer{flex-wrap:wrap;gap:12px}.page-footer{font-size:8px}.page-footer>span:last-child{display:none}.batch-toolbar{flex-wrap:wrap;font-size:11px}.batch-toolbar>span{font-size:10px}.editor-grid{grid-template-columns:1fr}.photo-stage>img{height:240px}.modal-head{padding:18px}.modal-head h2{font-size:23px}.modal-body{padding:18px}.modal-footer{padding:16px}.modal-footer .button{font-size:11px;padding:10px}.upload-item{grid-template-columns:45px 1fr 23px;gap:9px;padding:10px}.upload-item img{width:45px;height:45px}.file-line{flex-direction:column;gap:4px}.login{grid-template-columns:1fr}.login-story{min-height:0;padding:25px}.story-body{padding:28px 0}.story-body h1{font-size:37px;margin:14px 0}.story-body>.eyebrow,.story-note,.story-lines,.login-story footer{display:none}.story-body>p{font-size:12px}.login-form{padding:32px 25px}.login-form h2{font-size:30px}.empty-state{padding:40px 15px}.empty-state h2{font-size:25px}.empty-state p{font-size:12px}.empty-state p br{display:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}[hidden]{display:none!important}.eyebrow,.brand>div>span,.sidebar-section,.sidebar-note>span,.topbar,.page-heading p,.stats div div span,.retention-banner p>span,.pill,.tabs button,.empty-state p,.empty-state>small,.page-footer,.login-help,.collection-heading h2>span,.card-body>p,.card-body footer .text-link:first-child,.photo-meta,.fine-print,.editor-fields>details,.empty-inline,.placeholder-image,.empty-preview{color:#65715d}.dropzone,.info-note{color:#596b49}.badge,.badge.neutral{color:#626b57}.badge.gold,.description-label>span{color:#806125}.badge.green{color:#486c33}.badge.red{color:#99432f}.story-note,.login-story footer,.light-text{color:#adbea1}input::placeholder,textarea::placeholder{color:#727b69}@media(max-width:480px){.photo-grid{grid-template-columns:1fr}.card-image{height:220px}.card-body>p{font-size:12px}}
