/* Tianchen / Obsidian Studio. Shared visual system, no external visual assets. */
:root{--paper:#101214;--ink:#eeeae2;--muted:#a1a5aa;--accent:#b5dce3;--line:#ffffff14;--serif:"Segoe UI","Microsoft YaHei",sans-serif}
body{background:radial-gradient(ellipse at 85% 0%,#26373b35,transparent 44%),#101214;color:var(--ink);font-family:"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;-webkit-font-smoothing:antialiased}
body::before,body::after{display:none}button,a,input,textarea,select{transition:background .18s,border-color .18s,box-shadow .18s;color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid #b5dce3;outline-offset:4px}
.shell{grid-template-columns:244px minmax(0,1fr)}.sidebar{padding:36px 20px 22px;background:#141719;border-right:1px solid var(--line)}
.brand{font-size:20px;letter-spacing:2px;gap:12px;padding:0 8px}.brand small{font-size:9px;letter-spacing:1.8px;color:#9b9f9f;white-space:nowrap}.brand-mark,.brand .mark{font-size:35px;color:#d9e7e5;text-shadow:0 0 22px #a4dbe030}.nav-caption{margin:48px 14px 20px;color:#8e9297;font-size:11px;letter-spacing:2px}
.nav-item{font-size:14px;text-decoration:none;border:1px solid transparent;border-radius:8px;min-height:48px;margin:6px 0;padding:12px 14px;color:#a2a6ac;gap:13px}.nav-icon{font-size:19px;color:#959e9f}.nav-item.active{background:linear-gradient(105deg,#cce8e111,#d9e6ec04);border-color:#d6e6e21c;color:#f1f0eb;box-shadow:inset 2px 0 #bfdad9}.nav-item.active .nav-icon{color:#c5e6e7}.nav-item:hover{background:#ffffff07;color:#fff}.nav-count{color:#b9c6c7;font-variant-numeric:tabular-nums}.local-status{border-top:1px solid var(--line);border-radius:0;padding-top:24px;font-size:12px;color:#a2a9ac}.status-dot{background:#b0c8bd;box-shadow:0 0 8px #b1dbbc33}
.topbar{height:76px;padding:0 48px;background:transparent;border-bottom-color:#ffffff0c}.breadcrumb{font-size:12px;color:#979d9e}.breadcrumb strong{color:#d7dad9}.privacy-label{font-size:11px;color:#a2aaa9;letter-spacing:1px}.avatar{background:#e3e1d4;color:#252a2d;border:1px solid #ffffff48}.content{max-width:1376px;padding:42px 48px 28px}.page-heading{align-items:flex-end;margin-bottom:34px}.page-heading h1{font-size:34px;letter-spacing:1px;font-weight:500;line-height:1.3}.page-heading #page-subtitle{font-size:13px;color:#999fa4;margin-top:12px}.page-eyebrow{font-size:10px;color:#aab8b9;letter-spacing:2.8px;margin:0 0 14px;display:flex;align-items:center;gap:12px}.page-eyebrow::before{content:"";display:block;width:24px;height:1px;background:#b9d8d9}
.refresh-button,.action-link{border:1px solid #ffffff20;border-radius:6px;background:transparent;color:#c3c9cb;font-size:13px;min-height:40px}.refresh-button:hover,.action-link:hover{background:#ffffff08;border-color:#b8d9d840}.text-button{color:#becfcd;font-size:13px}.section-kicker{color:#abbab9;letter-spacing:2px;font-size:10px}.ask-card{position:relative;overflow:hidden;padding:32px 36px;border-radius:16px;background:radial-gradient(ellipse at 100% 0%,#87c1c31d,transparent 55%),linear-gradient(120deg,#20262a,#181c20);border:1px solid #c7d6d523;box-shadow:0 16px 45px #0002}.ask-card::before{content:"";height:1px;position:absolute;top:0;left:36px;right:36px;background:linear-gradient(90deg,#d6e5de7a,#9dccd921,transparent)}.ask-card h2{font-size:27px;letter-spacing:1px;font-weight:400;margin:20px 0}.spark{color:#d9e5db}.quiet-tag{color:#bec9c3;font-size:11px;border:1px solid #c7d7c824;border-radius:20px;padding:2px 9px}.ask-card>p{font-size:14px;color:#a8afb1;margin:0 0 22px}
#search-form{background:#101519;border:1px solid #ffffff16;border-radius:10px}#search-form:focus-within{border-color:#b9dce166;box-shadow:0 0 0 3px #9dd1d008}textarea{font-size:15px;line-height:1.9}textarea::placeholder{color:#969fa5}.mode-control select{background:#20272c;color:#c6ced0;border-radius:5px}.search-toolbar{padding:12px 16px}.primary-button,.primary,.editorial-actions .primary,.detail-section>.primary{background:linear-gradient(110deg,#dee8e1,#bddbde);color:#172024;border:1px solid #e4f0e644;border-radius:6px;box-shadow:0 3px 12px #0002;font-weight:500}.primary-button:hover,.primary:hover{background:#e7f0e9;color:#111}.suggestions{margin-top:15px;color:#8e989d}.suggestions button{color:#bac7ca}
.stats-grid{border:1px solid var(--line);border-radius:12px;background:#181b1e;padding:24px 0;margin:26px 0 38px;gap:0}.stat-card{padding:0 28px}.stat-card:first-child{padding-left:28px}.stat-label{font-size:12px;color:#aaaeb1}.stat-value{font-size:36px;color:#e8e5db;font-weight:300;letter-spacing:-1px;margin-top:10px}.panel-heading h2{font-size:19px;letter-spacing:.5px}.panel-heading .section-kicker{display:block;font-size:9px;margin-bottom:6px;color:#8f9b9c}
.asset-grid{gap:22px;align-items:start;grid-template-columns:repeat(2,minmax(0,1fr))}.experience-card,.project-card{padding:26px;border-radius:12px;background:#1a1e22;border:1px solid #d4e4e01b;box-shadow:0 6px 24px #0001;transition:background .18s,border-color .18s,box-shadow .18s}.experience-card:hover,.project-card:hover{background:#1e2429;border-color:#bdd6d84a;box-shadow:0 10px 32px #0002}.experience-card h3{font-size:20px;font-weight:500;line-height:1.6;color:#eeece5;margin:16px 0 10px}.experience-card p{font-size:14px;color:#afb6bd;line-height:1.85}.card-top,.asset-type,.record-kind{color:#bcc9cb;font-size:11px}.approved-badge,.record-status{color:#adc8ba;font-size:11px}.card-bottom{font-size:11px;color:#9faeb5;gap:12px;padding-top:18px;margin-top:24px}.pill{color:#bbcfca}.project-symbol{color:#cbdedd;font-size:32px}.project-card{min-height:224px}.project-card h3{font-size:23px;margin:20px 0}.project-meta{font-size:12px;color:#a9b4b6;border-top:1px solid var(--line);padding-top:18px;margin-top:auto;flex-wrap:wrap}
body[data-section="review"] .asset-grid,body[data-section="sops"] .asset-grid{grid-template-columns:1fr}body[data-section="review"] .experience-card{padding:22px 28px;border-radius:8px}body[data-section="review"] .experience-card h3{font-size:17px;margin:10px 0}body[data-section="sops"] .experience-card h3{font-size:19px}
.list-toolbar{gap:20px;margin-bottom:26px;border-bottom:1px solid var(--line);padding-bottom:18px}.filter-tabs{gap:3px}.filter-tabs button{font-size:13px;color:#a6acb1;padding:8px 15px;border:1px solid transparent;border-radius:6px}.filter-tabs button.selected{color:#e4ebe9;border-color:#c5d9d41a;background:#bbd7d710}.list-search{border-color:#ffffff19;border-radius:6px;background:#15191c;padding:8px 12px}.list-search input{font-size:13px;color:#dde2e2}.editorial-card{overflow:hidden;padding:24px}.editorial-card .editorial-cover{width:100%;height:auto;aspect-ratio:2.35/1;object-fit:cover;border-radius:7px;margin:0 0 23px}.editorial-card .card-bottom{margin-top:26px}.editorial-placeholder{aspect-ratio:2.35/1;border-radius:7px;margin-bottom:23px;padding:24px;display:flex;align-items:flex-end;justify-content:space-between;overflow:hidden;position:relative;background:radial-gradient(ellipse at 90% 0%,#9bc9cb24,transparent 70%),#22292d;border:1px solid #c9e5de14}.editorial-placeholder::before{content:"";width:140px;height:140px;position:absolute;right:32px;top:-18px;border:1px solid #b8d4d438;border-radius:50%;box-shadow:0 0 0 22px #b8d4d409,0 0 0 44px #b8d4d406}.editorial-placeholder span{font-size:11px;letter-spacing:2px;color:#c6d4d2;z-index:1}.editorial-placeholder b{font-size:34px;font-weight:300;color:#d2dcd4;letter-spacing:-1px;z-index:1}
.page-footer{font-size:10px;color:#929b9f;border-top:1px solid #ffffff0b;padding-top:22px;margin-top:40px;letter-spacing:.5px}.page-footer b{color:#bdcdca}.empty-state{border:1px solid var(--line);background:#171c20;color:#a3aeb3}.empty-symbol{color:#b8d2d0}
dialog{background:#1a1f23;border:1px solid #d6e1de2e;border-radius:14px;box-shadow:0 36px 100px #0009;color:#e5e6e2;padding:32px 36px;width:min(900px,calc(100% - 48px))}dialog::backdrop{background:#080b10bd;backdrop-filter:blur(8px)}.dialog-header{background:#1a1f23;top:-32px;padding:10px 0 16px;border-bottom:1px solid var(--line);z-index:2}.close-button{background:#ffffff08;color:#d6dcda;width:34px;height:34px}.detail-title{font-size:28px;line-height:1.55;letter-spacing:.3px;margin:24px 0}.detail-section{border-color:var(--line)}.detail-section h3{color:#c8d8d4;font-size:15px}.detail-note{background:#ffffff03;color:#b9c4c7;font-size:13px}.detail-body{color:#c6ccce;font-size:16px;line-height:1.95}.editorial-notice{background:#cad9c906;border-left:2px solid #b8cbc6;color:#bfcacb;font-size:13px;padding:14px 18px}.editorial-label select,.editorial-label textarea,.image-workbench select{background:#11181c;border-color:#dce8e022;border-radius:6px;color:#dae2e1}.editorial-label textarea{font-size:15px}.image-workbench button.action-link{border-color:#c4d4d52b;background:#ffffff03;color:#cfdbda;border-radius:6px}.image-task-form,.image-task-result{border-color:var(--line)}.image-task-result img,.article-cover{border-radius:8px;height:auto}.image-download img,.manuscript img{background:#253137;height:auto}.manuscript{color:#d7dcdb;font-size:17px;line-height:2}.manuscript h3{color:#eceee9;font-size:23px;font-weight:500}.manuscript blockquote{border-left-color:#b7d2d1;color:#c9d3d0}.evidence-item{background:#11191e;border-color:var(--line)}.evidence-item summary{color:#c3d7ce}#toast{background:#d7e7e0;color:#172524}.record-status.rejected{color:#d4a9a1}
/* Login is a quiet editorial composition, not a floating generic form. */
.login-page{display:grid;grid-template-columns:1.1fr 1fr;grid-template-rows:auto 1fr auto;gap:0;min-height:100dvh;background:radial-gradient(ellipse at 27% 53%,#38545d27,transparent 48%),#101416;padding:0 6vw;isolation:isolate}.login-page .brand{grid-column:1/-1;margin:36px 0 0;padding:0}.login-page .brand small{color:#a3afae}.login-story{align-self:center;position:relative;padding:40px 5vw 45px 0;max-width:700px}.story-kicker{font-size:10px;letter-spacing:3px;color:#b1c7c5;margin-bottom:28px}.login-story h2{font-size:clamp(32px,3.9vw,58px);font-weight:400;line-height:1.4;letter-spacing:2px;margin:0;color:#eae9df}.login-story h2 span{color:#b2ccce}.login-story>p{font-size:14px;line-height:2;color:#a1aeb2;max-width:360px;margin:24px 0}.studio-orbit{width:230px;height:100px;position:relative;margin:42px 0 22px;isolation:isolate}.studio-orbit::before,.studio-orbit::after{content:"";position:absolute;inset:10px 0;border:1px solid #bfd6d866;border-radius:50%;transform:rotate(-24deg);box-shadow:0 0 25px #93cddd0b}.studio-orbit::after{transform:rotate(24deg);border-color:#dbe4dc35}.orbit-core{position:absolute;left:102px;top:32px;width:28px;height:28px;border-radius:50%;background:radial-gradient(circle at 30% 25%,#e5eee8,#a5bfc4 28%,#203e4d 62%,#0b1820);box-shadow:0 0 45px #b3deed33}.story-foot{font-size:10px;letter-spacing:2px;color:#899d9f}
.login-page main{grid-column:2;grid-row:2;align-self:center;justify-self:center;position:relative;margin:45px 0;padding:40px 42px 34px;width:min(420px,100%);max-width:none;background:linear-gradient(150deg,#272e32a6,#191f24bb);border:1px solid #d7e4e321;border-radius:14px;box-shadow:0 24px 64px #0003}.login-page main::before{content:"";height:1px;position:absolute;top:-1px;left:30px;right:30px;background:linear-gradient(90deg,transparent,#dae7e377,#9abfc333,transparent)}.login-page .emblem{display:none}.login-page .heading{text-align:left;margin-bottom:32px}.login-page .heading p{font-size:10px;letter-spacing:2px;color:#b0c6c9;margin:0 0 14px}.login-page h1{font-size:29px;letter-spacing:1px;font-weight:400}.login-page label{font-size:13px;color:#b5c0c5}.login-page input{background:#0f181fa3;border:1px solid #d9e7e123;border-radius:6px;height:50px;font-size:15px;color:#e7eae5}.login-page input:focus{border-color:#b7d9df7d;box-shadow:0 0 0 3px #bddbe909}.login-page .submit{background:linear-gradient(105deg,#e0e8df,#bdd7dc);border:1px solid #e2eee930;border-radius:6px;min-height:50px;color:#17252c;font-size:14px;margin-top:28px;box-shadow:0 4px 18px #0002}.login-page .submit:hover{background:#e6eeea}.login-page .private{font-size:11px;color:#a7b8b9;padding-top:4px;text-align:left}.login-page footer{grid-column:1/-1;margin:0;padding:24px 0 28px;border-top:1px solid #ffffff0d;color:#94a4a6;font-size:10px;letter-spacing:2px;text-align:left}
@media(min-width:1600px){.content{padding-top:52px}.page-heading{margin-bottom:40px}.login-story{justify-self:center}}
@media(max-width:1100px){.shell{grid-template-columns:208px minmax(0,1fr)}.sidebar{padding:30px 14px}.brand{font-size:18px;letter-spacing:1px}.brand small{font-size:8px;letter-spacing:1px}.topbar{padding:0 30px}.content{padding:34px 30px}.asset-grid{grid-template-columns:1fr}.login-page{padding:0 5vw;grid-template-columns:1fr 1fr}.login-page main{padding:32px}.login-story h2{font-size:36px}.stat-card,.stat-card:first-child{padding-left:20px;padding-right:20px}}
@media(max-width:720px){.login-page{display:flex;flex-direction:column;padding:0 24px}.login-page .brand{margin:26px 0 0}.login-story{padding:32px 0 0;align-self:stretch}.story-kicker,.studio-orbit,.story-foot,.login-story>p{display:none}.login-story h2{font-size:26px;line-height:1.5}.login-story h2 br{display:none}.login-page main{margin:30px auto;width:100%;max-width:440px;padding:28px}.login-page footer{margin-top:auto;width:100%;padding:22px 0}.login-page h1{font-size:26px}.login-page .heading{margin-bottom:25px}}
@media(max-width:640px){.shell{display:block}.sidebar{position:relative;width:100%;height:auto;padding:24px 18px 0}.sidebar nav{display:flex;overflow:auto;margin:24px 0 0;gap:6px;padding-bottom:12px}.nav-item{width:auto;min-height:42px;padding:8px 11px;white-space:nowrap;margin:0;font-size:13px}.nav-caption,.local-status{display:none}.nav-count{display:none}.nav-icon{font-size:16px}.topbar{height:52px;padding:0 20px}.content{padding:28px 20px}.page-heading h1{font-size:28px}.page-eyebrow{margin-bottom:10px;font-size:9px}.page-heading #page-subtitle{font-size:12px}.page-heading{gap:12px;margin-bottom:26px}.privacy-label{display:none}.refresh-button{padding:6px 10px}.ask-card{padding:24px 20px}.ask-card h2{font-size:23px}.ask-card>p{font-size:13px}.ask-card::before{left:20px;right:20px}.stats-grid{grid-template-columns:repeat(2,1fr);padding:22px 0;row-gap:24px}.stat-card,.stat-card:first-child,.stat-card:nth-child(odd){padding-left:20px;padding-right:20px}.stat-value{font-size:30px}.stat-label{font-size:11px}.asset-grid{grid-template-columns:1fr;gap:18px}.experience-card,.project-card{padding:22px}.experience-card h3{font-size:19px}.list-toolbar{align-items:stretch;gap:14px;flex-direction:column}.list-search input{width:100%}.filter-tabs button{font-size:12px;padding:7px 10px}.page-footer{font-size:9px;gap:16px;align-items:flex-start}.page-footer span:last-child{text-align:right}.search-toolbar{padding:10px;gap:8px}.mode-control select{font-size:12px}.primary-button{font-size:13px;padding:8px 12px}.primary-button span{margin-left:8px}dialog{width:calc(100% - 20px);padding:24px 22px;border-radius:12px;max-height:92dvh}.dialog-header{top:-24px}.detail-title{font-size:23px}.manuscript{font-size:16px}.manuscript h3{font-size:21px}.editorial-placeholder{padding:22px}.editorial-placeholder b{font-size:30px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
.studio-panel{background:#1a1e22;border:1px solid var(--line);border-radius:12px;padding:26px;margin:20px 0;overflow-wrap:anywhere}.studio-panel h2{font-size:22px}.studio-panel h3{font-size:17px}.studio-panel .action-link{margin:6px 10px 0 0}.studio-panel input,.studio-panel select{padding:12px;background:#11181c;border:1px solid var(--line);border-radius:6px}.studio-panel textarea{background:#11181c;border:1px solid var(--line);padding:14px;max-height:none}.studio-manuscript{min-height:340px!important;max-height:none!important;line-height:1.9!important;resize:vertical}.studio-image-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.studio-image-choice{padding:14px;border:1px solid var(--line);border-radius:8px;overflow-wrap:anywhere}.studio-image-choice img{width:100%;height:auto;aspect-ratio:2.35/1;object-fit:cover;border-radius:6px}.studio-image-choice label{font-size:11px}.heading-actions{justify-content:flex-end;margin:0;gap:8px}.heading-actions button{font-size:13px}.sidebar{overflow-y:auto}.nav-caption{margin-top:28px}.nav-item{margin:4px 0;min-height:44px;padding-top:10px;padding-bottom:10px}#studio-view{min-width:0}@media(max-width:640px){.heading-actions{justify-content:flex-start}.page-heading{flex-wrap:wrap}.studio-image-list{grid-template-columns:1fr}.studio-panel{padding:20px}.studio-manuscript{min-height:300px!important}.nav-item{margin:0;min-height:42px}.studio-panel .action-link{margin-right:4px}}
.editorial-label input{width:100%;padding:12px;border:1px solid #dce8e022;border-radius:6px;background:#11181c;color:#dae2e1;font:inherit;min-height:46px}.studio-editor-actions{position:sticky;bottom:-32px;background:#1a1f23;padding:18px 0;margin-bottom:0;border-top:1px solid var(--line);z-index:2}@media(max-width:640px){.studio-editor-actions{bottom:-24px}}

.editorial-label:has(input[type="checkbox"]){display:flex;flex-direction:row;align-items:center;gap:12px}.editorial-label input[type="checkbox"]{width:18px;height:18px;min-height:18px;accent-color:#bdd8d2;flex:0 0 18px}.studio-panel progress{width:100%;height:10px;accent-color:#bdd8d2}

.intake-knowledge-list{display:grid;gap:12px}.intake-knowledge-card,.intake-topic{display:block;width:100%;text-align:left;white-space:normal;line-height:1.8;padding:16px!important;margin:0!important;overflow-wrap:anywhere}.intake-record-meta{display:block;color:#b7d1ca;font-size:12px;margin-bottom:8px}.intake-record-text{display:block;font-size:15px;color:#e1e7e4}.intake-knowledge-card .detail-note{display:block;background:none;padding:0;margin-top:10px}.intake-topic:disabled{opacity:.65;cursor:default}

.intake-creation-panel{padding:22px;margin:20px 0;border:1px solid #abcfc344;border-radius:12px;background:linear-gradient(120deg,#b3d9d20b,#acc5ee08)}.intake-creation-panel button{margin:8px 12px 0 0}

.task-progress{margin:20px 0;padding:20px;border:1px solid rgba(156,214,213,.17);border-radius:12px;background:linear-gradient(125deg,rgba(112,185,188,.07),rgba(255,255,255,.015))}.task-stage{font-size:16px;line-height:1.7;color:#cce7e5;margin:0 0 18px}.task-progress-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.task-progress-metric{min-width:0}.task-progress-metric>span{display:block}.task-progress-metric>strong{display:block;font-size:28px;line-height:1.5;font-variant-numeric:tabular-nums;margin:4px 0 8px}.task-progress-metric p{line-height:1.8;margin:8px 0}.task-progress>p:last-child{margin-bottom:0;font-size:12px}@media(max-width:640px){.task-progress-grid{grid-template-columns:1fr;gap:14px}.task-progress{padding:16px}}

.task-progress .detail-note{background:none;border:0;padding:0;margin:6px 0;line-height:1.8}.task-path{font-size:12px;line-height:1.8;color:var(--muted,#9aacae);margin:12px 0}.task-progress .task-stage{padding:0;background:none}

.editorial-open{display:block;width:100%;padding:0;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer}.editorial-open:focus-visible{outline:2px solid #b9d6d3;outline-offset:6px;border-radius:6px}.editorial-card-actions{display:flex;justify-content:flex-end;padding-top:14px;margin-top:14px;border-top:1px solid #d4e4e01b}.editorial-delete{color:#e0aba1;border:1px solid #b887794d;padding:7px 13px;border-radius:6px}.editorial-delete:hover{color:#ffe0d8;background:#b8877914}
