:root{--navy:#193d50;--navy-dark:#142f3f;--ink:#203642;--muted:#77858b;--line:#e6e9e7;--paper:#f6f7f4;--white:#fff;--gold:#d7ac67;--blue:#39778c;--green:#368365;--red:#b34f50;--radius:14px;font-family:Inter,Segoe UI,Microsoft YaHei,Arial,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}body{margin:0;font-size:14px}button,input,textarea,select{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.55;cursor:wait}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #d2ad6e;outline-offset:3px}button svg,a svg{flex-shrink:0}button{border:0}svg{vertical-align:middle}.icon{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}h1,h2,h3,p{margin:0}.boot{min-height:100vh;display:grid;place-content:center;text-align:center;gap:20px;color:var(--muted)}.brand-symbol{display:inline-flex;align-items:center;justify-content:center;border-radius:12px;background:var(--navy);color:#fff;font-size:31px;font-weight:650;letter-spacing:-3px;width:48px;height:48px;font-family:Georgia,serif}.brand-symbol span{color:var(--gold);font-size:37px;margin-left:4px}.boot .brand-symbol{margin:auto}.layout{min-height:100vh;display:grid;grid-template-columns:238px minmax(0,1fr)}.sidebar{position:fixed;inset:0 auto 0 0;width:238px;background:var(--navy);color:#fff;padding:34px 22px 24px;display:flex;flex-direction:column;z-index:12}.brand{display:flex;align-items:center;gap:11px;padding:0 10px}.brand .brand-symbol{background:#ffffff12;width:42px;height:42px;font-size:30px}.brand-name{font-family:Georgia,serif;font-size:23px;letter-spacing:.1px}.brand-sub{font-size:10px;letter-spacing:2.8px;color:#bdd0d7;margin-top:5px}.side-label{color:#9fb5c0;font-size:10px;letter-spacing:2.4px;margin:47px 15px 16px}.nav{display:flex;flex-direction:column;gap:7px}.nav-item{display:flex;align-items:center;gap:13px;min-height:47px;padding:0 14px;border-radius:9px;color:#c6d5dc;background:none;text-align:left;font-size:14px;width:100%;transition:background .15s}.nav-item:hover{background:#ffffff0d;color:#fff}.nav-item.active{background:#ffffff13;color:#fff;box-shadow:inset 3px 0 var(--gold)}.nav-item .count{font-size:11px;color:#c0d5dd;margin-left:auto;padding:2px 7px;border-radius:5px;background:#ffffff10}.sidebar-bottom{margin-top:auto;padding-top:28px}.side-note{border:1px solid #ffffff16;border-radius:10px;padding:15px 13px;color:#adc4cd;line-height:1.8;font-size:12px}.side-note strong{color:#f1dfbe;display:block;margin-bottom:5px;font-size:12px;font-weight:500}.profile{display:flex;align-items:center;gap:11px;margin:22px 6px 0;padding-top:19px;border-top:1px solid #ffffff18}.avatar{width:34px;height:34px;border-radius:50%;background:#d6e0dd;color:var(--navy);display:grid;place-items:center;font-size:14px;font-family:Georgia,serif}.profile-info{flex:1;font-size:12px}.profile-info small{display:block;color:#9fb5c0;margin-top:4px;font-size:10px}.profile button{color:#bed0d7;background:none;padding:5px}.workspace{grid-column:2;min-width:0}.topbar{height:78px;background:#ffffffd9;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 40px;gap:20px}.breadcrumb{display:flex;align-items:center;gap:12px;font-size:12px;color:#8a969b}.breadcrumb strong{color:#354e5b;font-weight:500}.top-right{display:flex;align-items:center;gap:22px;color:var(--muted);font-size:12px}.online{display:inline-flex;align-items:center;gap:7px}.online:before{content:"";height:6px;width:6px;background:#6f9a81;border-radius:50%}.main{padding:36px 40px 38px;max-width:1580px;margin:0 auto}.page-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:28px}.eyebrow{font-size:10px;letter-spacing:2.1px;color:#8a969b;margin-bottom:10px;font-weight:600}.page-heading h1{font-size:27px;font-weight:600;letter-spacing:-.7px}.page-heading p{font-size:13px;color:var(--muted);line-height:1.8;margin-top:10px}.heading-actions{display:flex;gap:10px;align-items:center;margin-top:12px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 17px;min-height:40px;border:1px solid transparent;border-radius:8px;font-size:12px;font-weight:500;white-space:nowrap;transition:all .15s;background:#fff;color:var(--ink)}.btn:hover{filter:brightness(.97)}.btn.primary{background:var(--navy);color:#fff}.btn.secondary{border-color:#dbe1de;background:#fff}.btn.soft{background:#edf3f3;color:#315e6e}.btn.danger{background:#fbefed;color:var(--red)}.btn.small{min-height:33px;padding:7px 11px;font-size:11px}.btn.text{background:transparent;color:var(--blue);padding:6px 7px;min-height:30px}.btn .icon{width:16px;height:16px}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:28px}.stat{border:1px solid var(--line);border-radius:11px;background:var(--white);padding:20px 22px;position:relative;overflow:hidden}.stat-label{color:var(--muted);font-size:12px;display:flex;align-items:center;gap:9px}.stat-value{font-size:29px;font-weight:550;letter-spacing:-1px;margin-top:16px;line-height:1}.stat-value small{font-size:11px;font-weight:400;letter-spacing:0;color:#9aa3a7;margin-left:10px}.stat .stat-icon{position:absolute;right:20px;bottom:18px;color:#ced9d9}.panel{background:var(--white);border:1px solid var(--line);border-radius:12px;overflow:hidden}.panel-title{padding:20px 23px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);gap:15px}.panel-title h2{font-size:14px;font-weight:600}.panel-title small{font-size:11px;color:var(--muted)}.toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:19px}.tabs{display:flex;gap:22px;align-items:center}.tab{background:none;padding:8px 0 12px;color:var(--muted);border-bottom:2px solid transparent;font-size:12px}.tab.active{color:var(--navy);border-color:var(--navy);font-weight:600}.tab span{margin-left:6px;font-size:10px;color:#97a6ab}.search{position:relative;display:flex;align-items:center;width:255px}.search .icon{position:absolute;left:12px;width:16px;height:16px;color:#98a5aa}.search input{border:1px solid #e1e5e2;border-radius:8px;background:#fff;padding:10px 12px 10px 37px;font-size:12px;width:100%;color:var(--ink)}.search input::placeholder{color:#9ca6aa}.table-scroll{overflow-x:auto}table{border-collapse:collapse;width:100%;text-align:left;white-space:nowrap}th{background:#fafbf9;font-size:11px;font-weight:500;color:#8a959a;padding:14px 20px;border-bottom:1px solid var(--line)}td{padding:20px;border-bottom:1px solid #edf0ed;font-size:12px;vertical-align:middle}tr:last-child td{border-bottom:0}tr:hover td{background:#fcfdfb}td .sub{display:block;color:#96a1a5;font-size:10px;margin-top:6px}.product-cell{display:flex;align-items:center;gap:14px}.mini-cover{width:47px;height:57px;border-radius:4px 7px 7px 4px;background:#e8eeeb;display:flex;align-items:center;justify-content:center;border-left:3px solid #bbd0c7;color:#477464;position:relative;overflow:hidden;flex-shrink:0}.mini-cover:after{content:"";position:absolute;inset:6px;border:1px solid #ffffff90;border-radius:3px}.mini-cover .icon{height:22px;width:22px}.product-title{max-width:280px;overflow:hidden;text-overflow:ellipsis;font-size:13px;font-weight:500}.badge{display:inline-flex;align-items:center;gap:5px;background:#edf5ee;color:#57836a;border-radius:5px;font-size:10px;padding:5px 8px;font-weight:400;white-space:nowrap}.badge:before{content:"";height:4px;width:4px;background:currentColor;border-radius:50%}.badge.draft{background:#f4f0e5;color:#a88a4b}.badge.archived,.badge.disabled{background:#f2f1ee;color:#8b9291}.badge.preview{background:#edf1fa;color:#677eaa}.row-actions{display:flex;gap:5px;align-items:center}.row-actions .btn{font-size:11px}.section-bottom{display:grid;grid-template-columns:1.25fr 1fr;gap:21px;margin-top:24px}.upload-info{padding:23px;display:flex;gap:19px}.upload-illustration{height:57px;width:57px;background:#f2f4ed;border-radius:13px;display:grid;place-items:center;color:#8d9d71;flex-shrink:0}.upload-illustration .icon{width:27px;height:27px}.upload-info h3{font-size:13px;margin:3px 0 8px}.upload-info p{color:var(--muted);font-size:11px;line-height:1.9}.upload-info .inline-link{display:inline-block;color:var(--blue);font-size:11px;margin-top:12px;background:none;padding:0}.activity{padding:4px 23px 12px}.activity-item{display:flex;align-items:flex-start;gap:11px;padding:14px 0;border-bottom:1px solid #f0f2ef}.activity-item:last-child{border:0}.activity-dot{margin-top:5px;width:6px;height:6px;border-radius:50%;background:#b8c8bd;flex-shrink:0}.activity-item p{font-size:11px;line-height:1.6;flex:1;overflow-wrap:anywhere}.activity-item time{font-size:10px;color:#a0a9ab;margin-left:auto;white-space:nowrap}.empty{padding:55px 25px;text-align:center;color:var(--muted);line-height:1.8}.empty .icon{display:block;width:35px;height:35px;margin:0 auto 17px;color:#a7b9b6}.empty h3{color:#526d76;font-size:14px;font-weight:500;margin-bottom:8px}.empty p{font-size:12px}.empty .btn{margin-top:20px}.footnote{display:flex;justify-content:space-between;align-items:center;margin-top:27px;font-size:10px;color:#9ba6a9}.footnote span:first-child{letter-spacing:1.1px}.notice{display:flex;align-items:center;gap:10px;background:#edf3f1;border:1px solid #e0e9e3;border-radius:8px;padding:12px 16px;font-size:12px;line-height:1.7;color:#5d7c72;margin-bottom:23px}.notice .icon{width:17px;height:17px;flex-shrink:0}.notice.warn{background:#fbf5e9;color:#9c7a3c;border-color:#eee4c9}.pagination{display:flex;justify-content:space-between;align-items:center;padding:15px 20px;color:var(--muted);font-size:11px;border-top:1px solid var(--line)}.pagination>div{display:flex;gap:8px}.mono{font-family:Cascadia Code,Consolas,monospace;font-size:11px}.modal-backdrop{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:#142b3890;backdrop-filter:blur(3px);z-index:100;padding:28px}.modal{background:#fff;width:590px;max-width:100%;max-height:90vh;border-radius:16px;box-shadow:0 25px 90px #09212b30;overflow:auto}.modal.wide{width:740px}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:24px 27px;border-bottom:1px solid var(--line)}.modal-header h2{font-size:18px;font-weight:550}.modal-close{color:#85969b;background:none;display:grid;place-items:center;width:30px;height:30px}.modal-body{padding:24px 27px}.modal-footer{padding:18px 27px;display:flex;justify-content:flex-end;gap:10px;border-top:1px solid var(--line);background:#fafbf9}.form-field{margin-bottom:21px}.form-field:last-child{margin-bottom:0}.form-field label,.field-label{display:block;font-size:12px;font-weight:500;margin-bottom:10px}.form-field input,.form-field textarea,.form-field select{width:100%;border:1px solid #dce2de;border-radius:8px;padding:11px 12px;color:var(--ink);background:#fff;font-size:13px;line-height:1.6}.form-field textarea{resize:vertical;min-height:90px}.field-hint{color:#92a0a4;font-size:11px;line-height:1.8;margin-top:8px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.check-list{display:flex;flex-wrap:wrap;gap:9px}.check-option{display:flex;align-items:center;gap:7px;border:1px solid var(--line);padding:10px 12px;border-radius:7px;font-size:12px}.check-option input{accent-color:var(--navy);width:auto}.file-drop{display:block;border:1.5px dashed #bbcfc6;background:#f8faf7;border-radius:11px;padding:32px 22px;text-align:center;cursor:pointer}.file-drop:hover{background:#f1f6f0}.file-drop .icon{width:30px;height:30px;color:#739184;display:block;margin:0 auto 12px}.file-drop strong{display:block;font-size:13px;font-weight:500}.file-drop p{color:var(--muted);font-size:11px;margin-top:9px}.hidden{display:none!important}.progress-track{height:7px;background:#edf1ec;border-radius:5px;overflow:hidden;margin-top:18px}.progress-fill{height:100%;width:0;background:#4b8b78;transition:width .15s}.progress-caption{display:flex;justify-content:space-between;margin-top:9px;color:var(--muted);font-size:11px}.form-error{font-size:12px;color:var(--red);line-height:1.7;margin-top:15px;min-height:0}.copy-box{padding:16px;border:1px solid #dbe4de;background:#f6f9f5;border-radius:9px;word-break:break-all;line-height:1.8;font-family:Consolas,monospace;font-size:12px}.login-page{min-height:100vh;display:grid;grid-template-columns:minmax(400px,1fr) minmax(500px,1fr);background:#fff}.login-art{background:var(--navy);color:#fff;padding:55px;position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between}.login-art .brand{padding:0}.login-art:after{content:"";width:540px;height:540px;border:1px solid #ffffff0c;border-radius:50%;position:absolute;right:-225px;bottom:-160px;box-shadow:0 0 0 65px #ffffff03,0 0 0 130px #ffffff02;pointer-events:none}.login-art h1{font-family:Georgia,Microsoft YaHei,serif;font-size:46px;line-height:1.4;font-weight:400;letter-spacing:-1px;margin:50px 0 25px}.login-art h1 em{color:#e0c18c;font-style:normal}.login-art p{font-size:13px;line-height:2;color:#b3c9d3;max-width:350px}.login-art small{color:#8ba8b6;font-size:11px;letter-spacing:2px}.login-form-wrap{display:flex;align-items:center;justify-content:center;padding:65px}.login-form{width:350px}.login-form .eyebrow{color:#9caaad}.login-form h2{font-size:26px;font-weight:550;margin-bottom:14px}.login-form>p{color:var(--muted);font-size:12px;line-height:1.9;margin-bottom:30px}.login-form .btn{width:100%;margin-top:5px}.login-note{font-size:11px;color:#9aa6a9;line-height:1.9;margin-top:23px}.library-banner{border-radius:13px;min-height:172px;background:#e8eeea;padding:30px 33px;display:flex;justify-content:space-between;align-items:center;margin-bottom:32px;overflow:hidden;position:relative}.library-banner .eyebrow{color:#81948a}.library-banner h2{font-family:Georgia,Microsoft YaHei,serif;font-size:27px;font-weight:400;color:#2e5347;letter-spacing:.2px}.library-banner p{font-size:12px;color:#779085;margin-top:14px;line-height:1.8}.banner-art{display:flex;align-items:flex-end;margin-right:35px;transform:rotate(-8deg);gap:10px}.banner-book{width:58px;height:104px;background:#568170;border:1px solid #ffffff55;border-left:5px solid #3c6757;border-radius:3px 7px 7px 3px;box-shadow:4px 7px #00000008;display:flex;align-items:center;justify-content:center;color:#e5ead8;font-family:Georgia,serif;font-size:25px}.banner-book:nth-child(2){height:125px;background:#d2bd89;border-left-color:#b5a06e;color:#617557;transform:rotate(12deg)}.banner-book:nth-child(3){height:95px;background:#a0b8b1;border-left-color:#7e9e93;color:#fff;transform:rotate(5deg)}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.product-card{background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden;transition:transform .2s,box-shadow .2s}.product-card:hover{transform:translateY(-3px);box-shadow:0 12px 30px #203d4710}.card-art{height:164px;background:#e5ede5;position:relative;padding:27px;overflow:hidden}.card-art:after{content:"";width:180px;height:180px;position:absolute;right:-35px;bottom:-90px;border:1px solid #b0c9b480;box-shadow:0 0 0 24px #b0c9b417,0 0 0 48px #b0c9b40c;border-radius:50%}.card-art .art-label{font-size:9px;color:#66826d;letter-spacing:2px}.card-art h3{font-family:Georgia,serif;font-size:31px;font-weight:400;margin-top:16px;color:#3b5b48;line-height:1.05}.card-art small{display:block;font-size:10px;color:#8a9c8c;margin-top:11px;letter-spacing:1px}.card-art .art-number{position:absolute;right:23px;top:25px;font-family:Georgia,serif;font-size:46px;font-style:italic;color:#bacfba;font-weight:400}.card-body{padding:23px}.card-category{font-size:10px;color:#8ba194;margin-bottom:10px}.card-title{font-size:16px;font-weight:550;line-height:1.6;margin-bottom:10px}.card-desc{font-size:11px;color:var(--muted);line-height:1.9;min-height:42px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.card-footer{margin-top:23px;border-top:1px solid #eef0eb;padding-top:17px;display:flex;align-items:center;justify-content:space-between;gap:10px}.card-footer span{color:#9ca8aa;font-size:10px}.viewer{height:100vh;display:flex;flex-direction:column;background:#fff}.viewer-header{height:63px;flex-shrink:0;display:flex;align-items:center;justify-content:space-between;padding:0 25px;border-bottom:1px solid var(--line);gap:20px}.viewer-title{display:flex;align-items:center;gap:16px;font-size:13px}.viewer-title .brand-symbol{width:32px;height:32px;font-size:23px;border-radius:8px}.viewer-controls{display:flex;gap:10px;align-items:center}.viewer-frame{width:100%;height:100%;border:0;flex:1}.viewer-loading{text-align:center;background:#f5f8f3;color:#789085;font-size:11px;padding:8px}.viewer.full .viewer-header{display:none}#toast{position:fixed;bottom:27px;left:50%;transform:translate(-50%,12px);max-width:90vw;background:#234a41;color:#fff;padding:13px 21px;border-radius:9px;font-size:12px;box-shadow:0 8px 30px #193b4030;z-index:130;opacity:0;pointer-events:none;transition:all .2s}#toast.visible{opacity:1;transform:translate(-50%)}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.settings-body{padding:24px;line-height:1.9;font-size:12px;color:var(--muted)}.settings-body strong{color:var(--ink);font-weight:500}.settings-row{display:flex;justify-content:space-between;gap:20px;padding:14px 0;border-bottom:1px solid #eef0eb}.settings-row:last-child{border-bottom:0}.settings-body .btn{margin-top:19px}.help-block{padding:22px;background:#f7f9f5;border-radius:9px;color:#839386;line-height:2;font-size:12px;margin-top:24px}.menu-toggle{display:none}.brand-name,.brand-sub{display:block}.brand-name{line-height:1.1}.brand-sub{line-height:1.4}.profile-info small{line-height:1.5}@media(min-width:1700px){.main{padding-top:44px}.page-heading{margin-bottom:33px}.stat{padding:25px}.card-art{height:190px}}@media(max-width:1250px){.layout{grid-template-columns:210px minmax(0,1fr)}.sidebar{width:210px;padding-left:15px;padding-right:15px}.main{padding:28px}.topbar{padding:0 28px}.stats{gap:12px}.stat{padding:18px}.section-bottom{grid-template-columns:1fr 1fr}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}th,td{padding-left:15px;padding-right:15px}.brand-name{font-size:21px}.product-title{max-width:220px}}@media(max-width:900px){.sidebar{width:186px}.layout{grid-template-columns:186px minmax(0,1fr)}.brand-name{font-size:18px}.brand-sub{font-size:8px}.brand{gap:9px;padding:0 5px}.brand .brand-symbol{width:35px;height:35px}.main{padding:25px 22px}.topbar{padding:0 22px;height:65px}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.page-heading{flex-wrap:wrap;gap:10px}.heading-actions{margin-top:0}.section-bottom,.settings-grid{grid-template-columns:1fr}.top-right .online{display:none}.login-art{padding:35px}.login-page{grid-template-columns:1fr 1.1fr}.login-art h1{font-size:35px}.login-form-wrap{padding:35px}.banner-art{margin-right:0}.library-banner{padding:25px}.library-banner h2{font-size:23px}.search{width:210px}.product-grid{gap:17px}.card-body{padding:19px}}@media(max-width:650px){.layout{display:block}.sidebar{position:sticky;inset:0;width:100%;padding:13px 18px;display:block}.brand-name{font-size:20px}.brand-sub{display:none}.sidebar .brand{padding:0}.sidebar .side-label,.sidebar-bottom{display:none}.nav{flex-direction:row;overflow:auto;margin-top:15px;gap:4px}.nav-item{padding:8px 11px;min-height:36px;white-space:nowrap;width:auto;font-size:12px;gap:6px}.nav-item .icon{width:16px;height:16px}.nav-item.active{box-shadow:inset 0 -2px var(--gold)}.nav-item .count{display:none}.topbar{height:49px;font-size:11px;padding:0 19px}.top-right{gap:10px;font-size:10px}.main{padding:25px 18px}.page-heading h1{font-size:24px}.page-heading p{font-size:12px}.eyebrow{font-size:9px}.stats{gap:10px;margin-bottom:22px}.stat{padding:17px}.stat-value{font-size:25px}.toolbar{flex-wrap:wrap;gap:10px}.search{width:100%}.tabs{gap:20px}.section-bottom{margin-top:18px;gap:18px}.footnote{font-size:8px;gap:12px}.login-page{display:block}.login-art{min-height:240px;padding:25px}.login-art h1{font-size:28px;margin:28px 0 10px}.login-art>small{display:none}.login-art p{font-size:11px}.login-form-wrap{padding:35px 25px}.login-form{width:100%;max-width:370px}.product-grid{grid-template-columns:1fr}.library-banner{padding:24px;min-height:150px}.library-banner h2{font-size:22px}.banner-art{display:none}.card-art{height:150px}.modal-backdrop{padding:12px}.modal-header,.modal-body{padding:21px}.modal-footer{padding:17px 21px}.form-row{grid-template-columns:1fr;gap:0}.viewer-header{padding:0 12px}.viewer-title{font-size:12px;gap:9px}.viewer-controls .btn{padding:7px;font-size:10px}.viewer-title .brand-symbol{display:none}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}