:root{--bg:#f5f6f1;--ink:#26382d;--muted:#7f8b80;--green:#315e46;--line:#e2e7dc;--soft:#edf2e8;--accent:#d7e6bd;--red:#ad503b}*{box-sizing:border-box}body{margin:0;font:14px/1.6 -apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;background:var(--bg);color:var(--ink)}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.48}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin-top:0}h1{font-size:30px;letter-spacing:-.8px}h2{font-size:20px}h3{font-size:16px}button:focus-visible,a:focus-visible{outline:3px solid #94b77f;outline-offset:3px}.btn{border:0;border-radius:9px;padding:12px 18px;background:var(--green);color:#fff;font-weight:600;display:inline-flex;align-items:center;justify-content:center;gap:8px}.btn.secondary{background:#fff;border:1px solid var(--line);color:var(--ink)}.btn.small{font-size:12px;padding:7px 12px;border-radius:7px}.btn.light{background:var(--soft);color:var(--green)}.btn.danger{background:#fbefea;color:var(--red)}.wide{width:100%}.muted{color:var(--muted)}.tiny{font-size:12px}.label{display:block;font-size:12px;font-weight:600;margin:0 0 8px}input,textarea,select{border:1px solid #dbe2d6;border-radius:8px;padding:12px 13px;background:#fcfdf9;color:var(--ink);width:100%;outline:none}input:focus,textarea:focus{border-color:#729269;box-shadow:0 0 0 3px #315e4610}textarea{min-height:130px;resize:vertical}.field{margin-bottom:18px}.card{border:1px solid var(--line);background:white;border-radius:14px;padding:23px}.brand{display:flex;align-items:center;gap:10px;font-weight:650;font-size:18px}.brand-icon{width:35px;height:35px;display:grid;place-items:center;background:var(--green);color:#fff;border-radius:10px;font-family:serif}.eyebrow{font-size:10px;letter-spacing:2.5px;font-weight:700;color:#708464;margin-bottom:12px}.pill{display:inline-flex;align-items:center;background:var(--soft);color:var(--green);padding:4px 10px;border-radius:20px;font-size:11px;gap:5px}.pill.gray{background:#f0f1ed;color:#969c91}.pill.orange{background:#fbf1e1;color:#9a7435}.row{display:flex;align-items:center;gap:12px}.between{justify-content:space-between}.wrap{flex-wrap:wrap}.gap{height:18px}.empty{text-align:center;padding:65px 20px;color:var(--muted);background:white;border:1px dashed #d6dfcd;border-radius:14px}.empty b{display:block;font-size:18px;color:#5b7053;margin-bottom:8px}.error{color:var(--red);font-size:12px;min-height:20px;margin-top:10px}.hidden{display:none!important}.avatar{height:46px;width:46px;border-radius:50%;background:#e9efdf;color:var(--green);display:grid;place-items:center;font-size:19px;font-weight:600}.topbar{height:80px;background:#fcfdf9;border-bottom:1px solid var(--line);padding:0 5vw;display:flex;justify-content:space-between;align-items:center}.user-shell{max-width:1080px;margin:0 auto;padding:35px 28px 125px}.hero{background:#eaf0df;border-radius:18px;padding:32px 35px;margin-bottom:25px;position:relative;overflow:hidden}.hero:after{content:'「 」';position:absolute;right:24px;top:-35px;font:180px serif;color:#d7e2c6;letter-spacing:-40px;pointer-events:none}.hero p{position:relative;z-index:1;margin-bottom:0;color:#6c7b61;max-width:70%}.hero h1{position:relative;z-index:1;margin-bottom:12px}.section-title{display:flex;justify-content:space-between;align-items:center;margin:28px 0 18px}.section-title h2{margin:0;font-size:17px}.works-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.work-card{background:white;border:1px solid var(--line);border-radius:14px;overflow:hidden;transition:transform .15s,box-shadow .15s}.work-card:hover{transform:translateY(-3px);box-shadow:0 9px 22px #3141260a}.work-cover{height:190px;background:#213b2d;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;color:#e9f1df}.work-cover img{height:100%;width:100%;object-fit:cover;object-position:top}.work-cover .cover-type{font-size:11px;letter-spacing:4px;opacity:.65}.work-cover .cover-lines{position:absolute;left:28px;right:28px;top:35px;border-top:1px solid #9db18655;border-bottom:1px solid #9db18655;height:120px}.work-cover .cover-number{position:absolute;bottom:15px;left:22px;font:italic 30px Georgia,serif;opacity:.4}.work-info{padding:19px}.work-info h3{margin:0 0 8px;line-height:1.5}.work-info p{font-size:12px;color:var(--muted);height:39px;overflow:hidden;margin-bottom:15px}.work-info .btn{width:100%;margin-top:15px}.bottom-nav{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);width:min(400px,calc(100% - 36px));display:flex;gap:6px;background:#fff;padding:7px;border:1px solid var(--line);border-radius:15px;box-shadow:0 8px 35px #23381b18;z-index:20}.bottom-nav a{flex:1;text-align:center;padding:11px;border-radius:10px;color:#89937f;font-size:13px}.bottom-nav a.active{background:var(--green);color:white;font-weight:600}.profile{display:flex;align-items:center;gap:16px;padding:27px;background:#edf2e5;border-radius:16px}.profile h2{margin:0;font-size:21px}.profile p{margin:4px 0 0;color:var(--muted);font-size:12px}.profile .profile-numbers{display:flex;gap:22px;margin-left:auto;font-size:12px;color:#7e8b70}.profile-numbers b{display:block;font-size:22px;color:#36512c}.accounts-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.account-card{padding:22px;text-align:left;border:1px solid var(--line);border-radius:12px;background:#fff;display:flex;align-items:center;gap:15px;width:100%;color:var(--ink)}.douyin-icon{width:43px;height:43px;display:grid;place-items:center;font-size:23px;border-radius:10px;background:#252b25;color:white}.account-card b{display:block;font-size:15px}.account-card small{display:block;color:var(--muted);margin-top:4px}.arrow{margin-left:auto;color:#8a997c}.back{display:inline-block;margin-bottom:20px;font-size:12px;color:#708665}.detail-grid{display:grid;grid-template-columns:320px 1fr;gap:22px;align-items:start}.detail-image{width:100%;border-radius:12px;border:1px solid var(--line);background:#263c2a}.detail-body{white-space:pre-wrap;font-size:14px;line-height:1.95;overflow-wrap:anywhere}.detail-actions{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:20px}.login-layout{min-height:calc(100vh - 80px);display:grid;grid-template-columns:1.1fr 1fr;gap:70px;align-items:center;max-width:1040px;margin:auto;padding:55px 32px}.login-intro h1{font-size:43px;line-height:1.4;margin-bottom:18px}.login-intro p{color:var(--muted);max-width:350px}.login-form{padding:38px}.login-form h2{margin-bottom:6px}.login-note{font-size:11px;color:#9ba38f;line-height:1.8;margin-top:20px}.steps{display:flex;gap:10px;margin-top:30px;font-size:12px;color:#748567;align-items:center}.steps i{font-style:normal;background:#dfe9cf;border-radius:50%;width:24px;height:24px;display:inline-grid;place-items:center;margin-right:4px}.overlay{position:fixed;inset:0;background:#13211366;backdrop-filter:blur(3px);display:grid;place-items:center;padding:20px;z-index:100}.modal{width:min(470px,100%);max-height:90vh;display:flex;flex-direction:column;background:#fff;border-radius:17px;box-shadow:0 25px 80px #13211333;overflow:hidden}.modal-head{display:flex;justify-content:space-between;align-items:center;padding:24px 25px 10px}.modal-head h2{font-size:19px;margin:0}.close{border:0;background:#f2f4ee;border-radius:50%;width:28px;height:28px;color:#84917b}.modal-content{padding:12px 25px 25px;overflow:auto}.notice-text{white-space:pre-wrap;background:#f5f7f0;border:1px solid #e8eddf;border-radius:10px;padding:18px;font-size:13px;line-height:1.9;max-height:40vh;overflow:auto}.modal-footer{padding:0 25px 25px}.choose-list{display:grid;gap:9px}.choose-list button{background:#f9fbf5;border:1px solid #e1e7d8;border-radius:10px;padding:16px;text-align:left;color:var(--ink)}.toast{position:fixed;left:50%;transform:translateX(-50%);bottom:105px;max-width:90%;background:#263b2d;color:white;border-radius:10px;padding:11px 20px;z-index:200;font-size:12px;box-shadow:0 5px 25px #0002}.admin-sidebar{position:fixed;left:0;top:0;bottom:0;width:216px;background:#263e2e;color:#e4ecdc;padding:30px 20px;z-index:30}.admin-sidebar .brand-icon{background:#d4e5b8;color:#2a482f}.admin-sidebar .brand{font-size:17px;margin-bottom:40px}.admin-sidebar nav{display:grid;gap:8px}.admin-sidebar nav a{padding:12px 15px;border-radius:8px;font-size:13px;color:#acbfa0}.admin-sidebar nav a.active{background:#40583a;color:white}.admin-sidebar .side-foot{position:absolute;bottom:25px;left:25px;font-size:11px;color:#9aaa8d}.admin-main{margin-left:216px;min-height:100vh}.admin-top{height:77px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 35px;background:#fbfcf8}.admin-top h1{font-size:19px;margin:0;letter-spacing:0}.admin-content{padding:30px 35px}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:28px}.stat-card{border:1px solid var(--line);border-radius:12px;background:white;padding:20px}.stat-card small{color:var(--muted)}.stat-card strong{display:block;font-size:30px;font-weight:500;margin-top:8px;line-height:1.2}.table-wrap{border:1px solid var(--line);background:#fff;border-radius:13px;overflow:auto}table{width:100%;border-collapse:collapse;text-align:left;white-space:nowrap}th,td{padding:16px 20px;border-bottom:1px solid #edf0e7;font-size:12px}th{background:#f9faf5;color:#829076;font-weight:500}tr:last-child td{border:0}.table-title{max-width:300px;overflow:hidden;text-overflow:ellipsis;font-weight:600}.table-tools{display:flex;gap:7px}.admin-toolbar{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:20px}.admin-toolbar input{max-width:260px;background:white;font-size:12px}.settings-form{max-width:720px}.settings-form textarea{min-height:290px}.preview-notice{padding:22px;border-radius:12px;border:1px solid var(--line);background:#fff;white-space:pre-wrap;font-size:13px}.studio-wrap{padding:0 8px 15px;height:calc(100vh - 77px)}.studio-wrap iframe{width:100%;height:100%;border:0;border-radius:10px;background:var(--bg)}.admin-login{max-width:430px;margin:11vh auto;padding:0 20px}.admin-login .brand{justify-content:center;margin-bottom:28px}.inline-sep{height:1px;background:var(--line);margin:20px 0}.read-info{font-size:11px;color:#8b997d;text-align:center;margin-bottom:12px}.subtitle{color:var(--muted);font-size:12px}.tagline{font-size:11px;letter-spacing:1px;color:#718462}.admin-mini-cover{height:45px;width:36px;border-radius:5px;object-fit:cover;object-position:top;background:#2c4431}.settings-columns{display:grid;grid-template-columns:1fr 320px;gap:25px}.notice-locked{background:#a3ad9b!important}.mobile-only{display:none}@media(max-width:950px){.works-grid{grid-template-columns:repeat(2,1fr)}.admin-sidebar{width:175px;padding:25px 12px}.admin-main{margin-left:175px}.admin-content{padding:23px}.admin-top{padding:0 23px}.settings-columns{grid-template-columns:1fr}.stats-grid{gap:10px}.stat-card{padding:15px}.detail-grid{grid-template-columns:260px 1fr}.login-layout{gap:25px}.login-intro h1{font-size:34px}}@media(max-width:640px){.topbar{height:68px;padding:0 20px}.topbar .brand{font-size:16px}.user-shell{padding:23px 18px 110px}.hero{padding:27px 24px}.hero h1{font-size:26px}.hero p{max-width:80%;font-size:12px}.hero:after{font-size:150px;right:2px}.works-grid{grid-template-columns:1fr;gap:18px}.work-cover{height:220px}.bottom-nav{bottom:12px}.accounts-grid{grid-template-columns:1fr}.profile{padding:21px;flex-wrap:wrap}.profile .profile-numbers{margin-left:62px;gap:25px}.login-layout{display:block;padding:40px 22px}.login-intro{margin-bottom:30px}.login-intro h1{font-size:32px}.steps{margin:20px 0}.login-form{padding:26px}.detail-grid{display:flex;flex-direction:column}.detail-grid>div{width:100%}.detail-image{max-height:440px;object-fit:contain}.admin-sidebar{position:static;width:100%;padding:13px 16px}.admin-sidebar .brand{margin-bottom:12px}.admin-sidebar nav{display:flex;gap:3px;overflow:auto}.admin-sidebar nav a{white-space:nowrap;padding:7px 10px;font-size:12px}.admin-sidebar .side-foot{display:none}.admin-main{margin-left:0}.admin-top{height:64px;padding:0 18px}.admin-top .btn{font-size:11px;padding:7px 10px}.admin-content{padding:20px 16px}.stats-grid{grid-template-columns:repeat(2,1fr)}.admin-toolbar{flex-wrap:wrap}.studio-wrap{height:calc(100vh - 170px)}.settings-columns{grid-template-columns:1fr}h1{font-size:26px}.modal-head{padding:20px 20px 9px}.modal-content{padding:12px 20px 20px}.modal-footer{padding:0 20px 20px}}
/* Task-based collection and compact phone layout. */
.topbar{position:sticky;top:0;z-index:40;background:#fcfdf9f0;backdrop-filter:blur(14px)}.hero{padding:34px 36px 28px;background:linear-gradient(120deg,#e8efdb,#f0f4e9)}.hero-rules{position:relative;z-index:1;display:flex;gap:8px;flex-wrap:wrap;margin-top:21px}.hero-rules span{border:1px solid #cfdcbe;border-radius:20px;padding:4px 11px;font-size:11px;color:#60724e;background:#ffffff77}.catalog-filters{display:flex;align-items:center;gap:7px;margin:-2px 0 19px}.catalog-filters button{border:0;border-radius:7px;background:transparent;color:#8b9581;padding:7px 12px;font-size:12px}.catalog-filters button.active{background:#e5edd9;color:#35542b;font-weight:600}.catalog-filters>span{margin-left:auto;font-size:11px;color:#94a086}.work-cover{height:auto;aspect-ratio:4/3}.cover-badge{position:absolute;left:13px;top:13px}.cover-badge .pill{box-shadow:0 3px 15px #0001;background:#fffdf6ed;color:#46623c}.cover-badge .pill.orange{background:#fff0d7;color:#946d2b}.work-info h3{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:48px}.work-time{display:block;color:#8b9584;font-size:10px;line-height:1.7}.work-card.has-task{border-color:#d6b87e;box-shadow:0 4px 18px #8e68340a}.task-banner{display:flex;align-items:center;gap:14px;background:#fcf4e6;border:1px solid #eddfbf;border-radius:13px;padding:18px 20px;margin:22px 0}.task-banner>div{min-width:0;flex:1}.task-banner b{font-size:13px;color:#805e2c}.task-banner p{margin:3px 0 0;font-size:11px;color:#9a835e;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-banner .btn{background:#94713c;flex-shrink:0}.task-symbol{width:34px;height:34px;display:grid;place-items:center;background:#f3e6ce;color:#987339;border-radius:9px;font-size:20px}.account-state{font-size:11px!important;color:#8b967f!important}.account-card>span:nth-child(2){min-width:0}.account-card b{overflow-wrap:anywhere}.account-heading{display:flex;gap:18px;align-items:center;padding:26px;background:#eaf0df;border-radius:15px;margin-bottom:27px}.account-heading h1{font-size:25px;margin-bottom:4px;overflow-wrap:anywhere}.account-heading p{margin-bottom:7px}.task-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:24px 0;gap:12px}.task-actions .btn{padding:14px 10px}.submission-card{padding:25px;background:#fff8ed;border:1px solid #eadabf;border-radius:14px;margin-bottom:28px}.submission-card.completed{background:#edf3e7;border-color:#d6e2cb}.submission-card h3{margin:0 0 5px}.submission-card p{margin:0 0 16px}.submission-input-row{display:flex;gap:9px}.submission-input-row input{min-width:0;flex:1;background:white}.submission-input-row button{flex-shrink:0}.submission-card .label{margin-top:14px}.submission-link{display:inline-block;font-size:12px;color:#55734a;border-bottom:1px dashed #93aa84}.task-cooldown{background:#ffffff80;padding:17px 20px;border-radius:10px;max-width:100%;overflow-wrap:anywhere}.task-cooldown p{margin:5px 0 0!important;font-size:13px}.detail-grid{grid-template-columns:minmax(240px,.7fr) minmax(300px,1.1fr);gap:25px}.detail-picture{min-width:0}.detail-picture .section-title{margin-top:0}.detail-image{display:block}.text-card{min-width:0}.bgm-info{border:1px solid #e5eadf;background:#f7f9f2;border-radius:9px;padding:13px 15px;margin-bottom:22px;font-size:12px;overflow-wrap:anywhere}.bgm-info>span{color:#5e7950;font-weight:600}.bgm-info p{white-space:pre-wrap;color:#86917d;margin:4px 0 0}.detail-body{font-size:14px;line-height:1.95}.choose-list button:disabled{opacity:1;background:#f6f7f3;color:#9ba391;border-color:#ebeee4}.choose-list .row{gap:8px}.choose-list b{overflow-wrap:anywhere;min-width:0}.choose-list .pill{flex-shrink:0}.choose-list .row>b{max-width:70%}.bottom-nav{padding-bottom:max(7px,env(safe-area-inset-bottom))}.user-shell{padding-bottom:calc(125px + env(safe-area-inset-bottom))}.modal{max-height:calc(100dvh - 40px)}.overlay{padding:20px max(16px,env(safe-area-inset-right)) max(20px,env(safe-area-inset-bottom))}.admin-toolbar .row>.btn{white-space:nowrap}.submission-status{display:inline-flex;margin-top:7px;font-size:10px}.submission-status a{color:#55734a;text-decoration:underline}.admin-main .stats-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:640px){.topbar{height:64px;padding:0 18px}.topbar .brand{font-size:15px}.topbar .brand-icon{width:31px;height:31px}.topbar .tagline{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-shell{padding:18px 16px calc(105px + env(safe-area-inset-bottom))}.hero{padding:25px 22px 23px;margin-bottom:21px;border-radius:15px}.hero h1{font-size:27px;line-height:1.45;margin-bottom:10px}.hero p{max-width:87%;font-size:12px;line-height:1.9}.hero:after{right:13px;top:-22px;font-size:128px}.hero-rules{margin-top:17px;gap:6px}.hero-rules span{font-size:10px;padding:4px 9px}.mobile-only{display:block}.works-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.work-card{border-radius:12px}.work-cover{height:auto;aspect-ratio:4/3}.work-info{padding:13px 11px}.work-info h3{font-size:14px;line-height:1.55;min-height:43px;margin-bottom:8px}.work-info p{display:none}.work-info .btn{padding:10px 5px;font-size:11px;border-radius:7px;margin-top:12px;min-height:39px}.work-time{font-size:9px}.cover-badge{left:8px;top:8px}.cover-badge .pill{padding:3px 7px;font-size:9px}.catalog-filters{gap:3px;margin-bottom:15px}.catalog-filters button{font-size:11px;padding:7px 10px}.catalog-filters>span{font-size:9px}.section-title{margin:23px 0 14px}.section-title h2{font-size:16px}.task-banner{padding:15px 12px;gap:9px;border-radius:11px;margin:18px 0}.task-banner b{font-size:12px}.task-banner .task-symbol{width:28px;height:28px;font-size:17px}.task-banner .btn{font-size:10px;padding:8px 11px}.task-banner p{font-size:10px}.bottom-nav{bottom:0;width:100%;border-radius:16px 16px 0 0;border-bottom:0;box-shadow:0 -5px 22px #23381b0c;padding-left:14px;padding-right:14px;gap:10px}.bottom-nav a{padding:11px;font-size:13px}.profile{border-radius:13px;gap:13px}.profile .profile-numbers{margin-left:59px;gap:33px}.account-card{padding:18px;gap:12px}.account-heading{padding:22px 20px;gap:14px}.account-heading h1{font-size:20px}.detail-shell>h1{font-size:25px;line-height:1.5;overflow-wrap:anywhere}.task-actions{gap:7px;margin:19px 0}.task-actions .btn{font-size:11px;padding:12px 4px;border-radius:8px}.submission-card{padding:20px 17px;border-radius:12px;margin-bottom:24px}.submission-card h3{font-size:15px}.submission-card p{font-size:11px;line-height:1.8}.submission-input-row{flex-direction:column}.submission-input-row input{width:100%;font-size:16px}.submission-input-row button{width:100%;padding:11px}.task-cooldown{width:100%;padding:13px 15px;margin-top:7px}.task-cooldown p{font-size:12px}.detail-grid{display:flex;flex-direction:column;gap:23px}.detail-image{max-height:none;width:100%;object-fit:contain}.text-card{padding:22px 18px}.detail-body{font-size:14px;line-height:2}.bgm-info{padding:12px}.modal{border-radius:15px}.modal-head h2{font-size:18px}.modal-content input{font-size:16px}.login-form input{font-size:16px}.login-layout{padding:32px 20px}.login-intro h1{font-size:29px}.admin-main .stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-toolbar .row{width:100%;justify-content:space-between}.admin-toolbar .row input{min-width:0;flex:1}.admin-content .btn{white-space:nowrap}}
