@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Noto+Sans+TC:wght@400;500;600;700;800&display=swap');

:root{font-family:'DM Sans','Noto Sans TC',system-ui,-apple-system,sans-serif;color:#1b2828;background:#f5f3ee;font-synthesis:none;--ink:#1b2828;--muted:#71807e;--line:#e3e7e2;--green:#235c52;--green-deep:#16453e;--pale:#e9f1ed;--paper:#fff;--cream:#f5f3ee;--red:#bb624d;--radius:20px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}a{color:inherit}img{max-width:100%;display:block}input,textarea,select{color:var(--ink)}input:focus,textarea:focus,select:focus,button:focus-visible,a:focus-visible{outline:3px solid #8ecbb9;outline-offset:2px}[hidden]{display:none!important}.muted{color:var(--muted)}.tiny{font-size:12px}.eyebrow{font-size:11px;letter-spacing:.18em;font-weight:800;color:var(--green);text-transform:uppercase}.eyebrow.light{color:#b8dcc8}.brand{display:flex;align-items:center;gap:11px;font-size:17px;letter-spacing:.15em;font-weight:800;white-space:nowrap}.brand strong{font-size:11px;letter-spacing:.23em;font-weight:600}.brand-mark{width:38px;height:38px;border:1.5px solid currentColor;border-radius:12px;display:grid;place-items:center;font-size:24px;font-weight:700;letter-spacing:-.08em}.brand-mark span{font-size:12px;margin-left:-2px}.brand-light{color:#fff}

.login-layout{display:grid;grid-template-columns:minmax(380px,53%) 1fr;min-height:100dvh;background:#fcfcfa}.login-story{min-height:100dvh;background:linear-gradient(135deg,#143d38,#20584d 57%,#2c6b5b);color:#fff;padding:38px clamp(30px,5vw,82px);display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.story-pattern{position:absolute;width:680px;height:680px;border:1px solid rgba(255,255,255,.13);border-radius:50%;right:-230px;top:8%;box-shadow:0 0 0 110px rgba(255,255,255,.035),0 0 0 235px rgba(255,255,255,.027);pointer-events:none}.story-pattern:after{content:'';position:absolute;inset:100px;border:1px solid rgba(255,255,255,.08);border-radius:50%}.story-body{max-width:630px;position:relative;z-index:1}.story-body h1{font-size:clamp(48px,5vw,82px);line-height:1.24;letter-spacing:-.055em;margin:22px 0}.story-body p{max-width:430px;color:#d8e7df;font-size:16px;line-height:1.9}.story-steps{display:flex;align-items:center;gap:16px;white-space:nowrap;margin-top:48px;color:#ddede4;font-size:12px;font-weight:700}.story-steps i{height:1px;width:24px;background:#8bb4a3}.story-footer{color:#afcfc1;font-size:12px;letter-spacing:.06em}.login-panel{display:flex;flex-direction:column;justify-content:center;align-items:center;padding:48px clamp(24px,4vw,70px);position:relative}.login-box{width:min(100%,440px)}.login-kicker{font-size:13px;color:var(--green);font-weight:700;letter-spacing:.12em}.login-box h2{font-size:clamp(30px,3vw,42px);letter-spacing:-.05em;margin:10px 0}.login-box>p{margin:0 0 40px}.stack-lg{display:grid;gap:20px}.field{display:grid;gap:9px;font-size:13px;font-weight:700}.field input,.field textarea,.field select,.select,.input{width:100%;border:1px solid #dce4df;border-radius:12px;background:#fff;min-height:48px;padding:11px 14px;outline:none;transition:border-color .15s,box-shadow .15s}.field textarea{min-height:100px;resize:vertical}.field input:focus,.field textarea:focus,.field select:focus{border-color:#6aa694;box-shadow:0 0 0 3px #cce5dc}.field input::placeholder,.field textarea::placeholder{color:#a6b0ac}.button{border:1px solid #dbe5df;background:#fff;color:var(--ink);border-radius:12px;min-height:44px;padding:10px 17px;font-size:13px;font-weight:800;display:inline-flex;justify-content:center;align-items:center;gap:9px;transition:transform .15s,background .15s,border .15s,box-shadow .15s;text-decoration:none}.button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 5px 14px #203b301a}.button.primary{background:var(--green);border-color:var(--green);color:#fff}.button.primary:hover:not(:disabled){background:var(--green-deep)}.button.soft{background:var(--pale);border-color:var(--pale);color:var(--green)}.button.danger{color:#a14338;border-color:#efdad6}.button.full{width:100%}.button.small{min-height:36px;padding:7px 12px;font-size:12px;border-radius:10px}.button.ghost{background:transparent;border-color:transparent}.login-note{margin-top:33px;font-size:12px;color:#88958e;display:flex;gap:9px;align-items:center}.note-dot{width:7px;height:7px;background:#81b6a4;border-radius:50%;flex:none}.login-bottom{position:absolute;bottom:28px;font-size:11px;color:#a2ada7}.mobile-brand{display:none}.form-error{border:1px solid #f0d0c8;color:#9a3a2c;background:#fff4f0;border-radius:10px;padding:10px 12px;font-size:12px;margin:0}

.app-layout{display:flex;min-height:100dvh}.sidebar{width:236px;flex:none;background:#fbfcf9;border-right:1px solid var(--line);padding:29px 17px 18px;display:flex;flex-direction:column;position:sticky;top:0;height:100dvh}.sidebar>.brand{padding:0 12px}.sidebar-label{color:#a2ada6;font-size:10px;font-weight:800;letter-spacing:.16em;margin:49px 12px 15px}.main-nav{display:grid;gap:5px}.nav-link{border:0;width:100%;background:transparent;color:#64736e;display:flex;gap:12px;align-items:center;text-align:left;border-radius:11px;padding:12px 13px;font-size:13px;font-weight:700}.nav-link:hover{background:#eff4ef;color:var(--green)}.nav-link.active{background:#e9f1ed;color:var(--green)}.nav-icon{width:19px;text-align:center;font-size:17px;line-height:1}.sidebar-bottom{margin-top:auto}.mode-card{border-radius:12px;background:#f0f4f0;border:1px solid #e4ece5;padding:14px;color:#46645b;font-size:11px;line-height:1.65}.mode-card strong{display:block;font-size:12px;margin-bottom:3px;color:#31594d}.mode-card.live{background:#eef7f1}.sidebar-profile{border-top:1px solid var(--line);margin-top:19px;padding:20px 0 0;display:flex;gap:10px;align-items:center}.avatar{width:36px;height:36px;border-radius:12px;display:grid;place-items:center;background:#dcebe3;color:var(--green);font-weight:800;flex:none}.avatar.small{width:32px;height:32px;border-radius:50%;font-size:12px}.sidebar-profile div{min-width:0;flex:1}.sidebar-profile strong,.sidebar-profile small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-profile strong{font-size:12px}.sidebar-profile small{color:#93a09a;font-size:10px;margin-top:3px}.icon-button{border:0;background:transparent;color:#6c8076;font-size:20px;padding:5px}.workspace{flex:1;min-width:0}.topbar{height:76px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 clamp(22px,3vw,50px);background:#fcfdfb}.topbar-path{font-size:12px;color:#9aa6a0;display:flex;gap:12px;align-items:center;letter-spacing:.04em}.topbar-path strong{color:var(--ink);font-weight:700}.slash{color:#bec9c1}.topbar-right{display:flex;align-items:center;gap:16px}.mode-pill{border-radius:999px;border:1px solid #eadfc4;background:#fff7e9;color:#8d6b31;padding:7px 11px;font-size:11px;font-weight:800;white-space:nowrap}.mode-pill.live{border-color:#c9e6d1;background:#edf9ef;color:#37704b}.balance-pill{border:1px solid var(--line);background:#fff;border-radius:999px;display:flex;align-items:center;gap:6px;padding:7px 12px;font-weight:800;font-size:13px}.balance-pill small{font-size:11px;color:var(--muted)}.coin{color:#ba8c36;font-size:16px}.mobile-nav-wrap{display:none}.content{max-width:1400px;margin:0 auto;padding:35px clamp(22px,3vw,50px) 80px}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:28px}.page-head h1{font-size:clamp(25px,2.7vw,36px);letter-spacing:-.045em;margin:8px 0 7px}.page-head p{margin:0;color:var(--muted);line-height:1.7;font-size:13px}.page-actions{display:flex;gap:9px;flex-wrap:wrap}.card{background:#fff;border:1px solid #e4e9e3;border-radius:var(--radius);box-shadow:0 8px 35px #20362a06}.card-pad{padding:24px}.section-title{font-size:16px;font-weight:800;margin:0 0 5px;letter-spacing:-.025em}.section-sub{font-size:12px;color:var(--muted);margin:0;line-height:1.6}.divider{height:1px;background:var(--line);margin:20px 0}.grid{display:grid;gap:18px}.studio-grid{grid-template-columns:minmax(0,1.16fr) minmax(310px,.84fr);align-items:start}.summary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:18px}.summary-card{background:#fff;border:1px solid var(--line);border-radius:17px;padding:20px;min-height:122px}.summary-card small{display:block;color:var(--muted);font-size:11px;font-weight:700}.summary-card strong{display:block;margin-top:13px;font-size:30px;line-height:1.1;letter-spacing:-.05em}.summary-card strong em{font-style:normal;font-size:12px;color:var(--muted);letter-spacing:0;margin-left:4px}.summary-card .pill{margin-top:14px}.character-card{display:flex;gap:17px;align-items:center;padding:18px;border-radius:15px;background:#f4f7f3;border:1px solid #e6ede6}.character-preview{width:76px;height:86px;flex:none;border-radius:12px;background:linear-gradient(145deg,#dcece2,#c6d9cf);display:grid;place-items:center;font-family:serif;font-size:40px;color:#57907d;overflow:hidden}.character-preview img{width:100%;height:100%;object-fit:cover}.character-card h3{margin:0 0 4px;font-size:17px}.character-card p{font-size:12px;color:var(--muted);line-height:1.6;margin:0}.fixed-label{font-size:10px;display:inline-block;color:var(--green);background:#e2eee7;border-radius:6px;padding:3px 6px;margin-bottom:7px;font-weight:800}.upload-zone{display:flex;align-items:center;justify-content:center;flex-direction:column;min-height:250px;border:1.5px dashed #bfcfc5;border-radius:16px;background:#fbfdfb;color:#477365;text-align:center;padding:20px;cursor:pointer;transition:.15s}.upload-zone:hover,.upload-zone.dragover{border-color:#5fa689;background:#f0f8f2}.upload-zone.has-image{padding:0;overflow:hidden;position:relative}.upload-zone img{width:100%;height:100%;max-height:360px;object-fit:contain;background:#eef1ec}.upload-symbol{width:51px;height:51px;border-radius:16px;background:#e6f1e9;display:grid;place-items:center;font-size:27px;margin-bottom:13px}.upload-zone strong{font-size:14px}.upload-zone small{margin-top:7px;color:#9ca9a1;font-size:11px}.upload-zone input{position:absolute;width:1px;height:1px;opacity:0}.upload-overlay{position:absolute;bottom:10px;right:10px;background:#ffffffef;padding:8px 11px;border-radius:9px;color:var(--green);font-size:11px;font-weight:800;box-shadow:0 3px 15px #0002}.file-caption{font-size:11px;color:var(--muted);margin-top:10px;word-break:break-all}.quote-row{display:flex;justify-content:space-between;align-items:center;padding:15px 0;border-top:1px solid var(--line);font-size:13px}.quote-row strong{font-size:20px;color:var(--green)}.quote-row strong small{font-size:12px;color:var(--muted)}.notice{border-radius:12px;padding:12px 15px;font-size:12px;line-height:1.7;background:#f3f7f2;border:1px solid #e6eee7;color:#566f60}.notice.warning{background:#fff8ed;border-color:#f1e1c7;color:#8b6738}.notice.error{background:#fff3f0;border-color:#f1dad3;color:#994e3b}.mode-explainer{display:grid;gap:12px}.point-list{padding:0;margin:0;list-style:none}.point-list li{display:flex;gap:11px;line-height:1.65;margin:11px 0;color:#65746d;font-size:12px}.point-list b{color:var(--green);font-size:11px}.mini-preview{width:100%;aspect-ratio:4/3;border-radius:12px;background:#eff3ee;display:grid;place-items:center;color:#9cafa0;margin-top:16px;overflow:hidden}.mini-preview img{width:100%;height:100%;object-fit:cover}.pending-status{font-size:12px;color:var(--muted)}.pill{display:inline-flex;align-items:center;gap:5px;border-radius:100px;padding:5px 9px;font-weight:800;font-size:10px;background:#edf1eb;color:#65786a}.pill.success{background:#e7f5e9;color:#397650}.pill.wait{background:#fff2de;color:#956934}.pill.fail{background:#fdecea;color:#a64a3f}.pill.mock{background:#f0ebfa;color:#6f5aa5}.pill.info{background:#e8f1f4;color:#477080}.pill:before{content:'';width:5px;height:5px;border-radius:50%;background:currentColor}.progress-line{display:flex;gap:7px;align-items:center;font-size:11px;color:var(--muted);margin-top:13px}.progress-line span{width:5px;height:5px;border-radius:50%;background:#6eab85;box-shadow:0 0 0 4px #e4f4e8}

.works-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.work-card{overflow:hidden}.work-media{aspect-ratio:1/1;display:grid;place-items:center;background:#eef2ed;color:#a0b2a6;font-size:39px;overflow:hidden}.work-media img{width:100%;height:100%;object-fit:cover}.work-info{padding:16px}.work-meta{display:flex;justify-content:space-between;align-items:center;gap:5px}.work-info h3{font-size:13px;margin:11px 0 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.work-info small{color:var(--muted);font-size:11px}.work-actions{display:flex;gap:8px;margin-top:14px}.empty{padding:55px 24px;border:1px dashed #cddbd0;border-radius:18px;text-align:center;background:#fbfcfa;color:#829287}.empty-icon{font-size:32px;background:#edf3ec;border-radius:16px;width:60px;height:60px;display:grid;place-items:center;margin:0 auto 15px;color:#5d9c7b}.empty h3{color:var(--ink);margin:0 0 6px;font-size:16px}.empty p{margin:0;font-size:12px;line-height:1.7}.filter-bar{display:flex;gap:9px;align-items:center;flex-wrap:wrap;margin-bottom:19px}.filter-bar .select,.filter-bar .input{width:auto;min-width:150px;min-height:38px;font-size:12px;padding:7px 10px}.filter-bar .input{min-width:180px}.table-wrap{overflow-x:auto;background:#fff;border:1px solid var(--line);border-radius:16px}.data-table{border-collapse:collapse;width:100%;min-width:660px;text-align:left}.data-table th{color:#87968c;background:#fbfcfa;font-weight:800;font-size:10px;letter-spacing:.08em}.data-table th,.data-table td{padding:14px 17px;border-bottom:1px solid #edf0ea;vertical-align:middle}.data-table tr:last-child td{border-bottom:0}.data-table td{font-size:12px}.data-table td small{color:var(--muted)}.data-table strong{font-size:12px}.table-img{width:43px;height:43px;object-fit:cover;border-radius:9px;background:#eef3ee}.table-img.blank{display:grid;place-items:center;color:#96aca0;font-size:19px}.table-empty{padding:33px;text-align:center;color:var(--muted);font-size:12px}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.form-grid .wide{grid-column:1/-1}.line-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:17px}.admin-user-list{display:grid;gap:10px}.user-row{display:flex;align-items:center;gap:12px;border:1px solid var(--line);background:#fff;border-radius:13px;padding:12px}.user-row .avatar{width:34px;height:34px}.user-row div{min-width:0;flex:1}.user-row strong{display:block;font-size:12px}.user-row small{color:var(--muted);font-size:10px;display:block;margin-top:3px}.user-row .button{flex:none}.section-gap{margin-top:26px}.subtle-link{color:var(--green);font-weight:800;font-size:12px;text-decoration:none}.subtle-link:hover{text-decoration:underline}.inline-label{color:#65776a;font-size:11px;font-weight:800}.result-modal{position:fixed;inset:0;background:#15221edb;display:grid;place-items:center;z-index:20;padding:18px}.modal-panel{width:min(900px,100%);max-height:90dvh;background:#fff;border-radius:20px;overflow:auto;position:relative}.modal-head{padding:19px 22px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.modal-body{padding:22px;display:grid;grid-template-columns:1fr 1fr;gap:18px}.compare-image{width:100%;aspect-ratio:1/1;object-fit:contain;background:#edf2ed;border-radius:12px}.compare-label{font-size:11px;color:var(--muted);font-weight:800;display:block;margin-bottom:9px}.modal-close{font-size:24px}.toast{position:fixed;right:22px;top:22px;max-width:min(370px,calc(100vw - 40px));z-index:99;background:#193f37;color:#fff;padding:13px 18px;border-radius:13px;box-shadow:0 12px 35px #0003;font-size:12px;line-height:1.6}.toast.error{background:#8a382e}.loading{height:120px;display:grid;place-items:center;color:var(--muted);font-size:12px}

@media(max-width:1100px){.sidebar{width:203px}.studio-grid{grid-template-columns:1fr 320px}.works-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.story-steps{gap:9px}.story-steps i{width:15px}}@media(max-width:850px){.sidebar{display:none}.topbar{height:65px;padding:0 20px}.mobile-nav-wrap{display:block;overflow-x:auto;background:#fcfdfb;border-bottom:1px solid var(--line);padding:0 12px;scrollbar-width:none}.mobile-nav-wrap::-webkit-scrollbar{display:none}.mobile-nav{display:flex;gap:3px;white-space:nowrap}.mobile-nav .nav-link{width:auto;min-height:47px;border-radius:0;padding:11px 12px;font-size:12px;border-bottom:2px solid transparent}.mobile-nav .nav-link.active{background:transparent;border-color:var(--green)}.mobile-nav .nav-icon{font-size:15px;width:17px}.content{padding:26px 20px 65px}.login-layout{grid-template-columns:1fr 1fr}.login-story{padding:34px}.story-body h1{font-size:48px}}@media(max-width:650px){.login-layout{display:block;background:#fcfcfa}.login-story{display:none}.mobile-brand{display:flex;position:absolute;top:26px;left:25px;font-size:14px}.mobile-brand .brand-mark{width:32px;height:32px;font-size:20px}.login-panel{min-height:100dvh;padding:105px 25px 60px}.login-box>p{margin-bottom:30px}.login-bottom{bottom:20px}.topbar-path>span:first-child,.topbar-path .slash{display:none}.topbar-right{gap:8px}.mode-pill{display:none}.content{padding:23px 16px 60px}.page-head{align-items:flex-start;flex-direction:column;gap:15px}.page-head h1{font-size:27px}.studio-grid,.two-col{grid-template-columns:1fr}.summary-grid{grid-template-columns:repeat(2,1fr);gap:9px}.summary-card{min-height:105px;padding:15px}.summary-card strong{font-size:25px}.summary-card:nth-child(3){grid-column:1/-1}.card-pad{padding:18px}.works-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.work-info{padding:11px}.work-info h3{font-size:12px}.work-actions{display:block}.work-actions .button{width:100%;margin-top:6px}.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:1}.modal-body{grid-template-columns:1fr}.filter-bar .select,.filter-bar .input{min-width:0;flex:1}.character-preview{width:67px;height:76px}.topbar .avatar{display:none}}@media(max-width:390px){.works-grid{grid-template-columns:1fr}.summary-card strong{font-size:23px}.brand{letter-spacing:.09em}.balance-pill{padding:6px 9px}}

.upload-zone:focus-visible{outline:3px solid #8ecbb9;outline-offset:3px}
@media(max-width:650px){.topbar .mode-pill{display:inline-flex;padding:6px 8px;font-size:10px}.topbar-right{gap:6px}}

.review-form{display:grid;gap:14px;margin-top:20px;padding-top:20px;border-top:1px solid var(--line)}.review-form .field textarea{min-height:88px}.review-form .line-actions{margin-top:0}.admin-user-item{min-width:0}.admin-user-item>.user-row{flex-wrap:wrap}.admin-user-item>.user-row>div{flex:1 1 180px}.admin-ledger-panel{margin:0 8px 10px;padding:17px;border:1px solid #e4e9e3;border-top:0;border-radius:0 0 13px 13px;background:#fbfdfb}.admin-ledger-heading{display:flex;justify-content:space-between;gap:12px;align-items:baseline;flex-wrap:wrap;margin-bottom:12px}.admin-ledger-heading strong{font-size:13px}.admin-ledger-heading small{font-size:11px;color:var(--muted)}.admin-ledger-list{display:grid;max-height:390px;overflow:auto}.admin-ledger-entry{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:10px 0;border-top:1px solid var(--line)}.admin-ledger-entry>div:first-child{min-width:0}.admin-ledger-entry strong{display:block;font-size:12px;overflow-wrap:anywhere}.admin-ledger-entry small{display:block;font-size:10px;color:var(--muted);margin-top:4px}.admin-ledger-delta{flex:none;display:grid;gap:3px;text-align:right;font-size:11px;font-weight:700;color:#46645b}
@media(max-width:650px){.review-form .line-actions .button{flex:1 1 100%}.admin-user-item>.user-row .button{flex:1 1 auto}.admin-ledger-panel{margin:0 4px 8px;padding:12px}.admin-ledger-entry{align-items:flex-start;flex-direction:column;gap:6px}.admin-ledger-delta{display:flex;gap:14px;text-align:left;flex-wrap:wrap}}
.studio-grid{grid-template-columns:minmax(0,1fr)}.reference-composition{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;align-items:start}.reference-source{min-width:0}.composition-title{display:flex;gap:8px;align-items:center;min-height:27px;margin-bottom:10px;font-weight:800;font-size:12px}.composition-title .fixed-label{margin:0}.reference-source .upload-zone{min-height:259px}.character-reference-heading{display:flex;justify-content:space-between;gap:8px;align-items:baseline}.character-reference-heading strong{font-size:14px}.character-reference-heading small{font-size:10px;text-align:right}.character-count-field{margin-top:12px}.character-count-field .select{width:100%}#character-selection-summary{line-height:1.5;min-height:30px;margin:10px 0}.identity-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.identity-thumb{position:relative;aspect-ratio:1;border:2px solid transparent;border-radius:8px;overflow:hidden;opacity:.4;background:#edf1eb}.identity-thumb.selected{border-color:#398669;opacity:1}.identity-thumb img{width:100%;height:100%;object-fit:cover}.identity-thumb span{position:absolute;bottom:3px;right:3px;border-radius:4px;padding:1px 4px;background:#ffffffde;color:#2d6d51;font-size:10px;font-weight:800}
@media(max-width:650px){.reference-composition{grid-template-columns:1fr}.reference-source .upload-zone{min-height:210px}}
.admin-password-note{margin:8px 8px 10px;display:grid;gap:7px}.admin-password-note strong{font-size:12px}.admin-password-note .credential-value{display:block;width:fit-content;max-width:100%;padding:8px 10px;border-radius:8px;background:#fff;overflow-wrap:anywhere;font-size:13px;font-weight:800;color:#573c1a}
.order-provider-number{display:block;margin-top:4px;font-size:10px;white-space:nowrap}

/* Function hub and administrator releases. */
.nav-count{margin-left:auto;min-width:20px;height:20px;padding:0 5px;border-radius:99px;background:#bc794e;color:#fff;display:inline-grid;place-items:center;font-size:10px}
.feature-updates:empty{display:none}.feature-update-banner{display:flex;align-items:center;gap:12px;margin-bottom:18px;padding:15px 18px;border:1px solid #e6d2af;border-radius:14px;background:#fff8ec;color:#775a2d;font-size:13px;font-weight:700}.feature-update-symbol{font-size:21px;color:#b57e32}
.feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;align-items:stretch}.feature-grid>.loading,.feature-grid>.empty{grid-column:1/-1}
.feature-card{width:100%;min-height:245px;padding:23px;border:1px solid #e1e8e1;border-radius:20px;background:#fff;box-shadow:0 8px 30px #20362a08;text-align:left;display:flex;flex-direction:column;align-items:stretch;color:var(--ink);transition:transform .18s,box-shadow .18s,border-color .18s}.feature-card:hover,.feature-card:focus-visible{transform:translateY(-3px);border-color:#a9cdbc;box-shadow:0 14px 30px #20362a16}.feature-card.ready{background:linear-gradient(145deg,#f2faf5,#fff 70%);border-color:#c9dfd0}.feature-card-top{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.feature-icon{width:52px;height:52px;display:grid;place-items:center;border-radius:15px;background:#e5f0e8;color:#2f7658;font-size:25px}.feature-labels{display:flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:flex-end}.feature-new{padding:5px 7px;border-radius:6px;background:#bd8054;color:#fff;font-size:10px;font-weight:900;letter-spacing:.08em}.feature-card h2{font-size:20px;letter-spacing:-.035em;margin:23px 0 8px}.feature-card p{font-size:12px;line-height:1.7;color:var(--muted);margin:0 0 22px}.feature-card-action{margin-top:auto;color:#2f7658;font-size:12px;font-weight:900}.feature-card:not(.ready) .feature-icon{background:#f5eee4;color:#9a713d}.feature-card:not(.ready) .feature-card-action{color:#957143}
.feature-admin-list{display:grid;gap:15px;margin-top:18px}.feature-editor-head{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:18px}.feature-editor-head strong{font-size:15px}.feature-editor .field input[type=checkbox]{min-height:20px;width:20px;height:20px;padding:0;accent-color:#397a5d}.feature-create .section-gap{margin-top:19px}
@media(max-width:1100px){.feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.feature-grid{grid-template-columns:1fr}.feature-card{min-height:220px}.feature-update-banner{align-items:flex-start}.nav-count{margin-left:4px}}
