
:root{font-family:Inter,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;color:#202522;background:#fff;font-synthesis:none;--green:#176c57;--muted:#848b86;--line:#e8ece8}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}button{color:inherit}button,a{transition:background .18s,color .18s,transform .18s}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #9dc9ba;outline-offset:4px}button{border:0;background:none}svg{flex-shrink:0}h1,h2,h3,h4,p{margin:0}.site-header{border-bottom:1px solid var(--line);height:82px}.header-inner{max-width:1480px;margin:auto;height:100%;padding:0 60px;display:flex;align-items:center;gap:65px}.brand{display:flex;align-items:center;gap:10px;white-space:nowrap}.brand>svg{width:30px;height:30px;color:var(--green)}.brand-name{font-size:25px;font-weight:750;letter-spacing:3px}.brand-slash{margin-left:15px;font-weight:400;color:#a2aaa5}.brand-english{font-size:10px;letter-spacing:2px;color:#737c76}.top-nav{display:flex;align-items:center;gap:32px;font-size:13px;height:100%;margin-left:20px}.top-nav button{height:100%;color:#8a908b;position:relative}.top-nav button.active{color:#25352c}.top-nav button.active:after{content:"";height:2px;background:var(--green);position:absolute;left:8px;right:8px;bottom:0}.header-actions{margin-left:auto;display:flex;align-items:center;gap:24px}.manage-button{display:flex;align-items:center;gap:8px;font-size:11px;color:#7d857f}.toggle-track{width:25px;height:14px;background:#dce2dd;border-radius:10px;padding:2px}.toggle-track span{display:block;width:10px;height:10px;background:white;border-radius:100%;transition:transform .2s}.is-on .toggle-track{background:var(--green)}.is-on .toggle-track span{transform:translateX(11px)}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:12px;border-radius:6px;padding:12px 20px;min-height:40px;font-weight:550}.button-primary{background:var(--green);color:#fff}.button-primary:hover{background:#125743;transform:translateY(-1px)}.button-outline{border:1px solid #dce3dd;background:#fff}.button-outline:hover{background:#f4f8f5}.button-danger{background:#b8493f;color:#fff}.main-shell{max-width:1480px;padding:0 60px;margin:auto}.profile-hero{display:flex;justify-content:space-between;align-items:center;padding:56px 0 45px;min-height:290px}.profile-left{display:flex;gap:27px;align-items:center}.avatar-art{width:103px;height:125px;border-radius:60px 60px 7px 7px;background:#e9eddf;position:relative;overflow:hidden;flex-shrink:0}.avatar-sun{position:absolute;left:18px;top:20px;width:33px;height:33px;border-radius:50%;background:#edb87a}.avatar-hill{position:absolute;width:120px;height:105px;background:#50786b;border-radius:60%;transform:rotate(-30deg);top:70px;left:-25px}.avatar-hill.two{background:#264c3f;left:42px;top:58px}.avatar-art>svg{position:absolute;width:40px;bottom:12px;left:20px;color:#faf3d9;transform:rotate(15deg)}.profile-name-row{display:flex;align-items:center;gap:12px}.profile-name-row h1{font-size:23px;letter-spacing:1px;font-weight:700}.profile-name-row h1 span{font-weight:500}.profile-role{margin:8px 0 16px;font-size:11px;letter-spacing:1px;color:#7e867f}.profile-bio{font-size:12px;color:#707970;line-height:1.9;white-space:pre-line;max-width:400px}.profile-contact{margin-top:16px;display:flex;gap:18px;align-items:center;font-size:10px;color:#6f7971}.profile-contact>span,.profile-contact>a{display:flex;align-items:center;gap:5px}.status-dot:before{content:"";width:5px;height:5px;background:#80a38b;border-radius:50%;margin-right:3px}.hero-statement{position:relative;width:300px;padding:0 12px 0 45px;border-left:1px solid var(--line)}.eyebrow{font-size:8px;letter-spacing:1.8px;color:#91998f;font-weight:550}.hero-statement h2{font-size:34px;line-height:1.4;font-weight:550;letter-spacing:2px;margin-top:10px}.hero-statement h2 span{color:var(--green)}.hero-statement h2 svg{width:31px;height:31px;margin:0 0 5px 10px;display:inline-block;color:var(--green);transform:rotate(12deg)}.hero-statement p{font-size:10px;color:#8a9289;margin-top:10px;letter-spacing:1px}.hero-line{position:absolute;bottom:5px;right:0;width:33px;height:1px;background:#b4c4b5}.section-nav{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);height:56px}.section-tabs{display:flex;align-items:center;gap:30px;height:100%;font-size:13px}.section-tabs button{display:flex;align-items:center;gap:7px;color:#8b938b;height:100%;position:relative}.section-tabs button.active{color:var(--green);font-weight:650}.section-tabs button.active:after{position:absolute;content:"";left:0;right:0;bottom:-1px;height:2px;background:var(--green)}.section-tabs button span{font-size:9px;color:#84978a;margin-left:4px}.storage-state{display:flex;align-items:center;gap:5px;font-size:9px;color:#8e998e}.gallery-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:25px 0 18px}.category-list{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.category-list button{padding:8px 15px;border-radius:5px;font-size:11px;color:#818a80;white-space:nowrap}.category-list button.selected{background:#eaf2ec;color:var(--green);font-weight:650}.category-list button span{font-size:8px;margin-left:7px;opacity:.65}.gallery-tools{display:flex;align-items:center;gap:18px}.search-box{display:flex;align-items:center;gap:8px;border-bottom:1px solid #e2e7e0;padding:7px 0;color:#a2aaa1}.search-box input{border:0;width:110px;outline:0!important;background:none;font-size:10px}.search-box input::placeholder{color:#a2aaa1}.sort-control{display:flex;align-items:center;gap:6px;position:relative;color:#838c82}.sort-control select{appearance:none;background:none;border:0;padding:8px 17px 8px 0;cursor:pointer;font-size:10px;outline:0}.sort-control>svg{position:absolute;right:0;pointer-events:none}.gallery-caption{display:flex;align-items:center;justify-content:space-between;font-size:9px;color:#9ca39a;margin:0 0 21px}.gallery-caption>span{display:flex;align-items:center;gap:10px}.gallery-caption i{height:9px;width:1px;background:#d7ddd4}.album-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:26px 20px}.new-album{padding:0;text-align:left;align-self:start}.new-album-cover{aspect-ratio:4/3;border:1px dashed #cbd9cd;background:#fbfdfb;border-radius:7px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:#7d917f;transition:background .2s}.new-album:hover .new-album-cover{background:#eff7f0}.new-album-icon{width:44px;height:44px;border:1px solid #d7e4d7;border-radius:50%;display:grid;place-items:center;margin-bottom:3px;color:#6d997a}.new-album-cover strong{font-size:12px;font-weight:550;color:#456a50}.new-album-cover>span:not(.new-album-icon){font-size:9px}.new-album-cover .format-mini{font-size:7px!important;letter-spacing:.4px;margin-top:12px;color:#a7b4a7}.new-album-foot{display:flex;justify-content:space-between;align-items:center;margin:13px 0 0;font-size:11px;color:#8c988b}.album-card{min-width:0;position:relative;animation:fade-up .4s ease both}.album-open{display:block;width:100%;padding:0;text-align:left}.album-cover{aspect-ratio:4/3;overflow:hidden;border-radius:7px;position:relative;background:#f1f2ed}.album-cover>img{width:100%;height:100%;object-fit:cover;transition:transform .45s}.album-card:hover .album-cover>img{transform:scale(1.045)}.cover-category{position:absolute;top:10px;left:10px;font-size:8px;line-height:1;padding:6px 8px;background:#ffffffd9;border-radius:3px;color:#4a5a4a;backdrop-filter:blur(5px)}.demo-label{position:absolute;right:9px;bottom:9px;background:#fff9;font-size:7px;border-radius:3px;padding:3px 6px;color:#5a675a}.cover-arrow{position:absolute;right:10px;top:10px;width:28px;height:28px;display:grid;place-items:center;background:#fff;border-radius:50%;opacity:0;transform:translateY(5px);transition:.2s}.album-card:hover .cover-arrow{opacity:1;transform:none}.album-title-row{display:flex;align-items:center;justify-content:space-between;margin:12px 0 7px}.album-title-row h3{font-size:12px;font-weight:600;letter-spacing:.5px}.album-number{font-size:8px;font-family:monospace;color:#adb4a9}.album-meta{display:flex;justify-content:space-between;font-size:7px;letter-spacing:.65px;color:#919b8e;gap:8px}.album-meta>span{letter-spacing:0;white-space:nowrap}.cover-file-icon{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;color:#839984}.cover-file-icon span{font-size:10px}.card-management{display:flex;gap:14px;margin-top:9px;color:#829180;font-size:9px}.card-management button{display:flex;align-items:center;gap:4px;padding:0}.card-management button:last-child{color:#b68a7a}.gallery-bottom{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding:35px 0 28px;font-size:9px;color:#929e8f;margin-top:5px}.gallery-bottom button,.gallery-bottom>span{display:flex;align-items:center;gap:7px}.tiny-plus{color:var(--green);font-size:18px;margin-right:6px}.site-footer{display:flex;align-items:center;justify-content:space-between;padding:28px 0 34px;color:#a1aa9e;font-size:8px;letter-spacing:.4px}.footer-brand{display:flex;align-items:center;gap:7px;color:#6f806e;font-size:12px;letter-spacing:1px}.footer-brand>svg{width:18px;height:18px;color:#7c9a7d}.footer-brand>span{font-size:8px;color:#a0aa9c;margin-left:13px}.back-top{display:flex;align-items:center;gap:6px}.empty-state{text-align:center;padding:65px 20px;color:#879482}.empty-state>svg{margin:0 auto 17px}.empty-state h3{font-size:17px;color:#486145;font-weight:550}.empty-state p{font-size:12px;margin:10px 0 23px}.load-error{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;background:#fff7ee;border:1px solid #f2dfc8;color:#9d733f;font-size:11px;margin-bottom:15px;border-radius:6px}.load-error button{display:flex;align-items:center;gap:5px}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:5px;color:#80907e}.icon-button:hover{background:#edf4ed}.text-button{display:flex;align-items:center;gap:6px;color:var(--green);font-size:11px}.danger{color:#ba7665}.toast{position:fixed;bottom:30px;left:50%;transform:translateX(-50%);z-index:1000;background:#fff;box-shadow:0 5px 45px #1c482826;border:1px solid #dce7d9;border-radius:8px;padding:12px 16px;display:flex;align-items:center;gap:10px;font-size:12px;color:var(--green);max-width:90vw}.modal-backdrop{position:fixed;inset:0;z-index:100;background:#14251cc7;backdrop-filter:blur(6px);padding:35px 20px;display:flex;align-items:flex-start;justify-content:center;overflow:auto}.modal{background:#fff;border-radius:11px;padding:30px;width:600px;max-width:100%;margin:auto;box-shadow:0 20px 100px #001a1233}.modal-wide{width:1000px;margin:0 auto}.modal-heading{display:flex;justify-content:space-between;align-items:center;gap:15px;border-bottom:1px solid var(--line);padding-bottom:20px;margin-bottom:22px}.modal-heading h2{font-size:23px;font-weight:550;letter-spacing:1px;margin-top:7px}.modal-subtitle{font-size:11px;color:#929c90;line-height:1.8;margin-bottom:25px}.field-label,.form-label,.field-row>label{display:block;font-size:11px;color:#667660}.field-label{margin-bottom:9px}.form-label{margin:18px 0}.field-row{display:grid;grid-template-columns:1.3fr 1fr;gap:15px;margin:18px 0}.field-row label>span{color:#ba806e}.field{display:block;width:100%;margin-top:8px;padding:11px 12px;border:1px solid #dce4d7;border-radius:5px;font-size:12px;background:#fff;color:#44543e;outline:none;resize:vertical;line-height:1.6}.field:focus{border-color:#8eb294}.optional{color:#adb5a8;font-size:9px;margin-left:5px}.dropzone{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;width:100%;background:#f8fbf7;border:1px dashed #bdd0b8;border-radius:7px;padding:30px 10px;margin-top:22px}.dropzone.dragging{background:#e7f3e4;border-color:var(--green)}.upload-icon{display:grid;place-items:center;width:47px;height:47px;background:#eaf1e6;color:var(--green);border-radius:50%;margin-bottom:4px}.dropzone strong{font-weight:500;font-size:12px;color:#7b8e73}.dropzone strong em{color:var(--green);font-style:normal}.dropzone>span:not(.upload-icon){font-size:9px;color:#a0ad99}.format-tags{display:flex;gap:6px;flex-wrap:wrap;justify-content:center;margin-top:6px}.format-tags b{font-size:7px;font-weight:500;border:1px solid #dfe7da;border-radius:3px;padding:4px 6px;background:#fff}.upload-note{font-size:9px;color:#a7b0a1;line-height:1.8;margin:12px 0}.hidden-input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.modal-actions{display:flex;gap:9px;align-items:center;justify-content:flex-end;padding-top:22px;margin-top:22px;border-top:1px solid var(--line)}.modal-actions>span{margin-right:auto;display:flex;align-items:center;gap:5px;font-size:9px;color:#9ba894}.form-error{padding:10px;background:#fff0e9;color:#a26045;border-radius:4px;font-size:11px;line-height:1.7}.upload-queue{margin:20px 0}.queue-heading{display:flex;justify-content:space-between;font-size:9px;color:#a0aa99;margin-bottom:7px}.queue-item{display:flex;align-items:center;gap:11px;padding:11px 0;border-bottom:1px solid #edf1ea;color:#8ca582}.queue-file-icon{background:#eef4e9;padding:9px;border-radius:5px;display:flex}.queue-item>div{flex:1;min-width:0}.queue-item strong{font-size:11px;display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-weight:500;color:#55674d}.queue-item div>span{display:block;font-size:8px;margin-top:5px}.queue-item.error{color:#b7795e}.viewer-info{display:flex;align-items:center;gap:15px;font-size:10px;color:#96a28e}.category-tag{background:#edf4e8;color:#628a4d;padding:5px 10px;border-radius:4px}.sample-badge{font-size:9px}.viewer-author{margin-left:auto}.viewer-description{padding:22px 0;font-size:12px;color:#7c8d72;line-height:1.9}.viewer-description>span{display:flex;gap:5px;align-items:center;font-size:9px;color:#a9b49f;margin-top:9px}.viewer-management{display:flex;gap:22px;padding-bottom:23px;align-items:center}.viewer-file{margin-bottom:24px}.viewer-file-bar{display:flex;align-items:center;justify-content:space-between;font-size:10px;border:1px solid #e7ede2;background:#fafcf8;padding:9px 12px;border-radius:5px 5px 0 0;gap:10px;color:#849578}.viewer-file-bar>div{display:flex;align-items:center;gap:10px;min-width:0}.viewer-file-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-index{font-family:monospace;color:#acb6a3;font-size:8px}.file-size{font-size:8px;color:#a2ae99;white-space:nowrap}.file-actions{flex-shrink:0}.viewer-image{display:block;width:100%;height:auto}.media-preview{background:#17271d;padding:12px}.media-preview video{width:100%;max-height:700px;display:block}.preview-note{font-size:10px;color:#9aa68e;padding:13px;line-height:1.7}.pdf-preview iframe{width:100%;height:720px;border:0;background:#e8ece3}.text-preview{background:#f5f8f1;padding:25px;overflow:auto}.text-preview pre{font:12px/1.9 Consolas,monospace;white-space:pre-wrap;overflow-wrap:anywhere;color:#52624a}.preview-loading{display:flex;align-items:center;gap:10px;font-size:12px;color:#8a9c7d}.file-fallback{padding:55px 20px;text-align:center;background:#f6f9f2}.file-fallback-icon{display:flex;justify-content:center;color:#9bb78a;margin-bottom:15px}.file-fallback h3{font-size:15px;font-weight:550;overflow-wrap:anywhere}.file-fallback p{font-size:11px;color:#9aaa8f;margin:12px 0 22px}.audio-preview{padding:40px 20px;background:#f4f8ed;display:flex;flex-direction:column;align-items:center;gap:15px;color:#8fa57a;font-size:12px}.audio-preview audio{width:100%;max-width:500px}.viewer-end{display:flex;align-items:center;flex-direction:column;padding:25px 0 35px;color:#92a480;font-size:13px;gap:10px}.viewer-end svg{width:30px;height:30px;color:#698c52;margin-bottom:8px}.viewer-end span{font-size:9px;color:#acb69f}.viewer-pagination{display:flex;justify-content:space-between;gap:10px;border-top:1px solid #e6eddf;padding-top:20px}.viewer-pagination button{display:flex;align-items:center;gap:8px;font-size:11px;color:#81996c}.about-section{display:grid;grid-template-columns:1fr 1.3fr;padding:55px 0 70px;gap:80px;min-height:480px}.about-intro h2{font-size:28px;font-weight:500;line-height:1.8;margin:18px 0}.about-intro h2 svg{display:inline-block;width:28px;height:28px;color:var(--green);margin-left:10px}.about-intro p{font-size:12px;color:#919f84;white-space:pre-line;line-height:2;margin:20px 0}.resume-heading{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #e6ecdf;padding-bottom:15px}.resume-heading h3{font-size:16px;font-weight:550}.resume-text{font-size:13px;line-height:2.1;white-space:pre-wrap;padding:25px 0;overflow-wrap:anywhere}.resume-placeholder{padding:25px 0;color:#99a68c}.resume-index{font-size:8px;letter-spacing:1.5px;color:#96a48b}.resume-placeholder h4{font-size:18px;font-weight:500;margin:13px 0}.resume-placeholder p{font-size:11px;line-height:2;margin:12px 0 25px}.resume-placeholder-line{height:1px;background:#edf1e7;margin:30px 0}.muted-small{font-size:10px;color:#a6b09a}.confirmation-body{font-size:13px;color:#8b987e;line-height:1.9}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fade-up{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media(min-width:1550px){.album-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}@media(max-width:1100px){.header-inner,.main-shell{padding-left:35px;padding-right:35px}.header-inner{gap:30px}.top-nav{margin-left:0;gap:20px}.brand-english{display:none}.header-actions{gap:15px}.album-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.hero-statement{width:245px;padding-left:30px}.hero-statement h2{font-size:29px}.profile-bio{max-width:310px}.profile-hero{gap:25px}}@media(max-width:760px){.site-header{height:68px}.header-inner,.main-shell{padding-left:22px;padding-right:22px}.header-inner{gap:15px}.brand-name{font-size:21px}.brand>svg{width:24px;height:24px}.brand-slash,.top-nav,.manage-button>svg{display:none}.header-actions{gap:12px}.manage-button{font-size:9px;gap:5px}.header-upload{padding:9px 12px;font-size:10px;min-height:35px}.profile-hero{padding:33px 0;min-height:0}.profile-left{gap:17px}.avatar-art{width:75px;height:95px}.profile-name-row h1{font-size:18px}.profile-role{font-size:9px;margin:6px 0 10px}.profile-bio{font-size:10px;max-width:100%;line-height:1.9}.profile-contact{font-size:8px;margin-top:10px;flex-wrap:wrap;gap:8px}.hero-statement{display:none}.section-tabs{font-size:11px;gap:25px}.section-tabs button svg{width:13px}.storage-state{font-size:8px}.gallery-toolbar{flex-wrap:wrap;gap:15px;padding:19px 0 14px}.category-list{gap:3px}.category-list button{font-size:10px;padding:7px 10px}.gallery-tools{justify-content:space-between;width:100%;gap:20px}.search-box{flex:1}.search-box input{width:100%}.gallery-caption{font-size:8px;line-height:1.8;gap:10px;margin-bottom:15px}.gallery-caption>span{gap:6px;flex-wrap:wrap;justify-content:flex-end}.album-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:23px 13px}.new-album-cover{gap:6px}.new-album-icon{width:32px;height:32px}.new-album-cover strong{font-size:10px}.new-album-cover>span:not(.new-album-icon){font-size:7px}.new-album-cover .format-mini{font-size:5px!important;margin-top:5px}.new-album-foot{font-size:9px;margin-top:10px}.album-title-row h3{font-size:11px}.album-title-row{margin-top:10px}.album-meta{font-size:6px;letter-spacing:.15px;gap:3px}.cover-category{font-size:6px;top:7px;left:7px;padding:4px 6px}.demo-label{font-size:6px;bottom:7px;right:7px}.gallery-bottom{font-size:8px;padding:24px 0}.gallery-bottom>span:last-child{display:none}.site-footer{padding:23px 0;gap:15px;flex-wrap:wrap;font-size:7px}.footer-brand{font-size:11px}.footer-brand>span{display:none}.back-top{display:none}.modal-backdrop{padding:12px 10px}.modal{padding:22px 17px;border-radius:8px}.modal-heading h2{font-size:19px}.modal-heading{padding-bottom:16px;margin-bottom:18px}.field-row{grid-template-columns:1fr}.modal-actions{flex-wrap:wrap}.modal-actions>span{font-size:8px}.modal-actions .button{font-size:10px;padding:10px 14px}.format-tags{gap:4px}.format-tags b{font-size:6px;padding:4px}.viewer-info{gap:7px;font-size:8px;flex-wrap:wrap}.viewer-author{display:none}.viewer-description{font-size:10px}.viewer-management{gap:13px;flex-wrap:wrap}.viewer-file-bar{padding:6px 7px;font-size:8px;gap:3px}.viewer-file-bar>div{gap:6px}.file-size{display:none}.file-actions .icon-button{width:25px;height:25px}.file-index{font-size:7px}.pdf-preview iframe{height:520px}.viewer-pagination button{font-size:8px;gap:4px}.viewer-end p{font-size:12px}.viewer-end span{font-size:8px;text-align:center}.about-section{grid-template-columns:1fr;gap:30px;padding:30px 0}.about-intro h2{font-size:24px}.load-error{font-size:9px;gap:10px}.upload-note{font-size:8px}.modal-subtitle{font-size:10px}.toast{font-size:10px;padding:10px 12px;bottom:15px;width:max-content}.text-preview{padding:15px}.text-preview pre{font-size:10px}.viewer-image{min-height:1px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
/* Portfolio editing, resume upload, and read-only sharing. */
.header-inner{justify-content:flex-end}.header-actions{gap:18px}.header-share{padding:9px 14px;min-height:36px}.profile-hero{justify-content:flex-start;min-height:235px;padding:42px 0}.profile-contact:empty{display:none}.avatar-art:disabled{opacity:1;cursor:default}.avatar-art>img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.avatar-editable{cursor:pointer}.avatar-edit-label{position:absolute;bottom:0;left:0;right:0;background:#174e3ed9;color:#fff;display:flex;align-items:center;justify-content:center;gap:4px;font-size:9px;padding:8px 2px}.category-chip{display:inline-flex;align-items:center;position:relative}.category-chip:has(.category-delete)>button:first-child{padding-right:26px}.category-list .category-delete{position:absolute;right:4px;padding:2px;width:17px;height:17px;display:grid;place-items:center;color:#9d7669;background:transparent}.category-list .category-delete:hover{background:#fbece6;border-radius:50%;color:#a94332}.category-list .category-add{display:inline-flex;gap:4px;align-items:center;border:1px dashed #ceddd0;color:var(--green);padding:7px 10px}.category-manager{margin-top:24px;border-top:1px solid var(--line)}.category-manager>div{display:flex;align-items:center;justify-content:space-between;padding:14px 0;border-bottom:1px solid var(--line);font-size:12px}.card-management{min-height:17px}.about-section.resume-page{display:block;padding:30px 0 55px;min-height:350px}.resume-page .resume-content{width:100%}.resume-actions{display:flex;gap:20px;align-items:center}.resume-heading{padding-bottom:18px}.resume-empty{display:flex;flex-direction:column;align-items:center;gap:18px;padding:70px 15px;color:#82927b;font-size:12px}.resume-file{margin-top:24px}.resume-file .viewer-file-bar{font-size:12px}.resume-file .pdf-preview iframe{height:850px}.resume-file .viewer-image{max-width:100%;width:auto;max-height:none;margin:auto}.resume-file .viewer-file-bar>span{overflow-wrap:anywhere;min-width:0}.footer-brand{font-weight:550}.resume-text:empty{display:none}
@media(max-width:760px){.header-actions{gap:10px;flex-wrap:wrap}.header-share{font-size:9px;padding:8px 10px;min-height:32px}.header-actions .manage-button{font-size:9px}.site-header{height:auto;min-height:65px}.header-inner{padding-top:12px;padding-bottom:12px}.profile-hero{padding:30px 0;min-height:0}.avatar-edit-label{font-size:7px;padding:5px 1px}.resume-actions{gap:12px}.resume-actions .button{padding:8px 10px;font-size:10px}.resume-actions .text-button{font-size:9px}.resume-file .pdf-preview iframe{height:600px}.category-list .category-delete{right:3px}.category-chip:has(.category-delete)>button:first-child{padding-right:22px}.resume-file .viewer-file-bar{font-size:9px;flex-wrap:wrap;gap:9px}.resume-file .viewer-file-bar .text-button{font-size:9px}.resume-heading h3{font-size:14px}}

/* Slightly stronger type, including regular Chinese UI labels. */
:root{font-weight:500}body{-webkit-text-stroke:0.1px currentColor}.local-edition-bar,.local-message{font-weight:500}

/* Discourage saving artwork through image gestures. */
.portfolio-app img{-webkit-user-drag:none;-webkit-touch-callout:none;user-select:none;-webkit-user-select:none}

/* Independent album covers, kept separate from the work file list. */
.card-management{flex-wrap:wrap;row-gap:8px}.viewer-management{flex-wrap:wrap;gap:16px}.cover-editor{display:flex;gap:18px;align-items:center;padding:0 0 22px;margin:0 0 20px;border-bottom:1px solid var(--line)}.cover-editor-preview{width:132px;aspect-ratio:4/3;border-radius:6px;overflow:hidden;background:#f1f4ee;display:grid;place-items:center;flex-shrink:0;color:#839984}.cover-editor-preview img{width:100%;height:100%;object-fit:cover}.cover-editor strong{font-size:13px;font-weight:600}.cover-editor p{font-size:10px;line-height:1.8;color:#84917d;margin:8px 0 14px}.cover-editor-actions{display:flex;align-items:center;gap:16px}.cover-editor-actions .button{padding:8px 12px;min-height:34px;font-size:10px}
@media(max-width:760px){.cover-editor{gap:12px;align-items:flex-start}.cover-editor-preview{width:95px}.cover-editor p{font-size:9px;margin:6px 0 10px}.cover-editor-actions{gap:10px;flex-wrap:wrap}.cover-editor-actions .text-button{font-size:10px}.card-management{gap:10px}.viewer-management .button{font-size:10px;padding:9px 12px}}

.word-preview{background:#f4f6f2}.word-preview iframe{display:block;width:100%;height:82vh;min-height:650px;border:0;background:#f4f6f2}.word-preview .preview-note{padding:12px 20px;margin:0}@media(max-width:640px){.word-preview iframe{height:75vh;min-height:480px}}
.publish-page{max-width:760px;margin:70px auto;padding:24px;font-size:15px;line-height:1.8}.publish-page h1{font-size:28px;font-weight:700;color:#145f50}.publish-page section{margin:24px 0;padding:22px;border:1px solid #dce6df;border-radius:12px;background:#f8faf7}.publish-page h2{font-size:20px}.publish-page .field{margin:12px 0;display:block;width:100%}.publish-status{padding:16px;background:#eef5ee;border-radius:8px;overflow-wrap:anywhere}
.local-edition-bar>div{flex-wrap:wrap;justify-content:flex-end}.local-edition-bar button.interview-export-button{background:#16765f;border-color:#16765f;color:white;font-weight:650}.local-edition-bar button:disabled{opacity:.55;cursor:wait}@media(max-width:700px){.local-edition-bar{align-items:flex-start}.local-edition-bar>span{flex-shrink:0}.local-edition-bar>div{gap:5px}}
