/* Project visual system. Original review components remain untouched. */
:root{--primary:#176b61;--accent:#27877b;--ink:#19323b;--muted:#71828a;--line:#e1e8e8;--soft:#f3f6f5;--radius:14px;font-family:Inter,-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;color:var(--ink);background:#f3f6f5;line-height:1.65}
button,a.btn{border-radius:9px;transition:background .16s,border-color .16s,box-shadow .16s}
button.primary{background:var(--primary);border-color:var(--primary);box-shadow:0 3px 8px #176b6114}
button.primary:hover{background:#11584f;border-color:#11584f}
a{color:var(--primary)}
:focus-visible{outline:3px solid #57b3a680;outline-offset:3px}
input:focus,select:focus,textarea:focus{outline:2px solid #57b3a680;outline-offset:2px}
input:not([type=checkbox]):not([type=radio]),select,textarea{border-color:#dbe5e4;border-radius:9px;background:#fbfcfc;line-height:1.6}
input[type=checkbox],input[type=radio]{accent-color:var(--primary)}
/* Product workspace */
.layout{grid-template-columns:244px minmax(0,1fr)}
.sidebar{padding:30px 18px 20px;background:#183039;color:#bfd0d3;border-right:1px solid #ffffff06;overflow-y:auto}
.brand{display:flex;align-items:center;gap:12px;padding:0 12px;color:#f4f8f7;font-size:21px;letter-spacing:-.6px;font-weight:650}
.brand-mark{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:#2a655f;color:#d5eee8;font-size:14px;font-weight:750;letter-spacing:-.5px;flex:none}
.brand small{margin-top:3px;letter-spacing:1.5px;font-size:8px;color:#86a7ac}
.project-label{margin:28px 12px 20px;padding:0 0 24px;color:#e4ecec;font-size:13px;border-bottom-color:#ffffff12;line-height:1.9}
.project-label small{color:#8fa9ae;font-size:10px;letter-spacing:.7px}
.nav{gap:5px}.nav a{padding:11px 13px;color:#a7bdc2;font-size:13px;font-weight:500;border-radius:9px;gap:12px;line-height:1.5}
.nav a:hover{background:#ffffff08;color:#edf5f3}.nav a.active{background:#2b4d53;color:#fff;box-shadow:inset 3px 0 #80b8a5}
.nav-icon{display:inline-flex;width:18px;height:18px;opacity:.85}.nav-icon svg{width:18px;height:18px}
.sidebar-footer{color:#78979e;font-size:10px;line-height:1.9;letter-spacing:.3px;padding-top:30px}
.topbar{height:76px;padding:0 42px;border-color:#e1e8e7;background:#fff}.topbar>.muted{font-size:12px;letter-spacing:.5px}.topbar .right{gap:12px;font-size:12px}.topbar button.small,.topbar a.small{border-color:transparent;background:#f4f7f6;padding:7px 11px}
.content{padding:44px 44px 72px;max-width:1600px}.pagehead{margin-bottom:32px;align-items:center;gap:28px}.pagehead h1{font-size:30px;font-weight:650;letter-spacing:-1px;line-height:1.45;margin:8px 0 10px}.pagehead p{font-size:13px;line-height:1.9;color:#71828a;max-width:680px}.eyebrow{font-size:10px;letter-spacing:2.3px;font-weight:650;color:#728a8d}
.pagehead .actions{flex-shrink:0;gap:9px}.pagehead .actions button{min-height:40px;padding:9px 16px}.pagehead .actions button.small{font-size:12px}
.stats{gap:18px;margin-bottom:28px}.stat{padding:23px 25px;background:#fff;border:1px solid #e3eae8;border-radius:14px;color:#657e82;font-size:12px;box-shadow:0 3px 10px #19323b02}.stat strong{font-size:36px;font-weight:550;letter-spacing:-1.5px;line-height:1.2;margin:12px 0;color:#1c3e43}.stat span{font-size:11px;color:#8b9a9d}
.grid2{gap:24px;align-items:start}.card{padding:26px;border:1px solid #e2e9e7;border-radius:14px;background:#fff;box-shadow:0 3px 12px #19323b02;margin-bottom:22px}.card h3{font-size:16px;letter-spacing:-.3px;font-weight:650;color:#26444b}.cardhead{margin-bottom:20px;gap:16px}.cardhead a{font-size:12px}.card p{line-height:1.85}.card .card{background:#fafcfb;box-shadow:none;border-color:#e8eeec;padding:20px}.listrow{padding:20px 2px;border-bottom-color:#edf1ef}.listrow h4{margin:7px 0;font-size:14px;font-weight:600}.listrow small{font-size:10px;letter-spacing:.6px}.listrow p{font-size:12px;margin:5px 0}.listrow>span{font-size:11px;color:#68857f}.listrow:last-child{border-bottom:0}.workspace-link:hover{box-shadow:none;background:#f8fbfa;border-color:#d2e2dc}
.table-scroll{padding:0;overflow:auto}table{font-size:13px}thead th{padding:16px 20px;font-size:11px;letter-spacing:.4px;font-weight:600;color:#81928f;background:#f8faf9;border-bottom:1px solid #e5ece9;white-space:nowrap}tbody td{padding:20px;border-bottom:1px solid #edf1ef;line-height:1.8}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:#fafcfb}.titlecell strong{font-weight:600}.titlecell small{font-size:11px;color:#849791}.filter{max-width:440px;margin-bottom:22px;min-height:42px}.tag{border-radius:6px;padding:3px 8px;font-size:10px;letter-spacing:.2px}.tag.green{background:#edf6f0;color:#36775b;border-color:#d8eadf}.tag.blue{background:#edf3f6;color:#46728b;border-color:#dce8ee}.tag.amber{background:#faf3e6;color:#9c7534;border-color:#eee2c9}
.workspace-tabs{gap:30px;margin-bottom:28px;border-color:#dfe8e4}.workspace-tabs a{font-size:13px;padding:15px 2px;color:#81908b}.workspace-tabs a.selected{color:var(--primary);border-color:var(--primary);font-weight:650}.workspace-summary{gap:24px;font-size:12px;color:#6b827c;margin-bottom:24px}.task-card{border-radius:14px;padding:25px;border-color:#e2e9e7}.task-card h3{font-size:16px;font-weight:600}.workspace-grid,.task-list{gap:22px}.notice{border-radius:10px;background:#edf5f1;border-color:#dceae3;color:#55746b;padding:16px 20px;font-size:12px;line-height:1.9}.notice.warn{background:#fbf5e9;border-color:#eee1c6;color:#977536}.empty{padding:42px 20px;color:#81928c;font-size:13px}.formhelp{color:#80938c;line-height:1.9;font-size:12px}.btn.small,button.small{border-color:#dce6e1;font-size:12px}
#dialog{border:1px solid #e1e8e5;border-radius:18px;padding:28px;box-shadow:0 24px 90px #142c3526;max-height:88dvh}#dialog::backdrop{background:#102c3b60;backdrop-filter:blur(3px)}.dialoghead{padding-bottom:20px;margin-bottom:24px;border-bottom-color:#e9efec}.dialoghead h2{font-size:22px;font-weight:600;letter-spacing:-.5px}.formfooter{border-color:#e8eeeb;padding-top:20px}.stack{gap:20px}label{font-size:12px;color:#547168;font-weight:550}fieldset{border-color:#e1e9e5;border-radius:10px}fieldset legend{font-size:12px;color:#6f8980}.prewrap{line-height:1.95}
.login{background:#f4f7f5}.login-aside{background:#183039;padding:clamp(48px,7vw,110px);color:#e6f0ed;justify-content:center}.login-aside h1{font-size:clamp(28px,3vw,43px);font-weight:550;letter-spacing:-1.5px;line-height:1.55;max-width:590px}.login-aside p{color:#98b6b8;line-height:2}.login-aside .eyebrow{color:#73a89d;margin-bottom:32px}.login-form{max-width:390px}.login-form h2{font-size:29px;font-weight:600;letter-spacing:-.7px}.login-form input{min-height:46px}.login-form button{min-height:46px;margin-top:8px}
/* Shared review shell */
.portable-review{--review-rail:274px;--review-dark:#183039;--review-outline:#5d7b82;color:#233f47;background:#f3f6f5}
.portable-review .review-topbar{height:78px;flex-basis:78px;padding:0 28px;gap:18px;border-color:#e0e8e4;box-shadow:none}.portable-review .review-project-switcher{flex-basis:235px;max-width:235px}.portable-review .review-project-trigger strong{font-size:16px;font-weight:650}.portable-review .review-project-icon{width:38px;height:38px;flex-basis:38px;border-radius:11px;background:#1d5e56;color:#ecf6f2;font-size:20px}.portable-review .review-project-chevron{color:#78968e}.portable-review .review-project-trigger:hover{background:#f0f6f2;border-color:#e1ebe5}.portable-review .review-account{font-size:11px;color:#769086;background:#f5f8f6;border-radius:8px;padding:7px 10px;max-width:120px;overflow:hidden;text-overflow:ellipsis}
.portable-review .review-top-modes{align-self:center;gap:4px;margin-left:4px;background:#f3f6f4;border-radius:10px;padding:4px}.portable-review .review-top-modes>div>button{min-width:70px;padding:9px 14px;border-radius:7px;font-size:13px;font-weight:550;line-height:1.6}.portable-review .review-top-modes button.active{background:#fff;color:#176b61;box-shadow:0 2px 5px #19323b0a}.portable-review .review-top-modes button.active:after{display:none}.portable-review .review-top-modes>div>button:hover{color:#176b61;background:#fff}
.portable-review .review-top-actions{gap:7px}.portable-review .review-tools>button,.portable-review .review-tool-trigger{height:36px;min-height:36px;padding:0 12px;border-radius:8px;font-size:12px;border:1px solid transparent;background:transparent;color:#56716b}.portable-review .review-tools>button:nth-last-of-type(2){background:#176b61;border-color:#176b61;color:#fff;padding:0 17px}.portable-review .review-tools button:hover{background:#edf5f0;color:#176b61;border-color:#d7e5dc}.portable-review .review-tool-trigger[aria-expanded=true]{background:#edf5f0;color:#176b61}.portable-review .review-native-stage{background:#f3f6f5}.portable-review .review-header-menu{border-color:#e1e8e3;border-radius:12px;box-shadow:0 12px 36px #17372d18;padding:8px}
.project-review-heading{padding:36px 40px 8px;max-width:1480px;margin:auto}.project-review-heading small{font-size:10px;letter-spacing:2.5px;color:#8b9c92}.project-review-heading h1{font-size:30px;font-weight:600;letter-spacing:-1px;margin:8px 0;color:#1d3d42;line-height:1.5}.project-review-heading p{font-size:13px;color:#7c9187;margin:0;line-height:1.9}
.portable-review .home-dashboard{padding:24px 40px 48px;background:none;max-width:1480px;margin:auto;min-height:0}.portable-review .home-health-strip{border:1px solid #e1e9e3;border-radius:14px;margin-bottom:24px;overflow:hidden}.portable-review .home-health-strip>span{padding:18px 24px;border-color:#edf1ee;gap:4px}.portable-review .home-health-strip b{font-size:23px;font-weight:550;letter-spacing:-.6px;color:#274b47}.portable-review .home-health-strip small{font-size:11px;color:#8a9a91}.portable-review .home-schedule-card,.portable-review .home-focus-card,.portable-review .home-timeline{border:1px solid #e1e8e3;border-radius:14px;box-shadow:0 3px 12px #19323b02;overflow:hidden}.portable-review .home-schedule-card>header,.portable-review .home-focus-card>header,.portable-review .home-timeline .timeline-head{background:#fff;min-height:67px;padding:0 24px;border-color:#e9eeeb}.portable-review .home-schedule-card>header:before{display:none}.portable-review .home-schedule-card h2,.portable-review .home-focus-card h2,.portable-review .home-timeline .timeline-head h2{color:#28463f;font-size:16px;font-weight:600;letter-spacing:-.3px}.portable-review .home-schedule-card header span,.portable-review .home-version-strip header span{color:#92a098;font-size:11px}.portable-review .home-schedule-actions button{border-radius:6px;border-color:#e0e9e3;color:#668276}.portable-review .home-schedule-actions button.primary{background:#176b61;border-color:#176b61;color:white}.portable-review .home-version-strip{margin-top:24px;border-color:#e1e8e3;box-shadow:none}.portable-review .home-version-card{background:#f8fbf9;padding:24px;gap:24px}.portable-review .home-version-card:hover{background:#f0f7f2}.portable-review .home-version-card h3{font-size:19px;color:#284c41}.portable-review .home-version-card dt{color:#8d9d92}.portable-review .home-focus-link,.portable-review .home-version-strip header button{color:#367b62}.portable-review .home-timeline{margin-top:24px}.portable-review .home-timeline .timeline-list{padding:0 24px}.portable-review .home-timeline .timeline-item{padding:20px 0}.portable-review .home-update-requirement,.portable-review .home-update-project{background:#edf5ee;border-color:#dce9df;color:#557b60;border-radius:6px}.portable-review .home-update-requirement b{color:#497357}
.portable-review .review-fixed-filter{padding:20px 14px;border-color:#ffffff0c}.portable-review .review-directory-select-trigger,.portable-review .review-directory-select-reset{background:#25424a;border-color:#37565d;border-radius:7px;min-height:36px}.portable-review .review-directory-rail input{background:#213d45;border-color:#35535b;color:#dae8e9;border-radius:7px}.portable-review .review-directory-group{padding:6px}.portable-review .review-directory-group a{border-radius:7px;line-height:1.7}.portable-review .review-directory-group a.active{background:#355b5d;color:#fff}.portable-review .review-directory-group h3{letter-spacing:.4px}
.portable-review .requirement-detail,.portable-review .version-stage{padding:32px 36px}.portable-review .requirement-detail h1,.portable-review .version-stage-head h1{font-size:26px;font-weight:600;letter-spacing:-.6px}.portable-review .review-tool-popover{border-color:#dfe8e1;border-radius:14px;box-shadow:0 18px 52px #19392b21}.portable-review .review-tool-popover>header{background:#f8fbf8;border-color:#e6eee6;padding:18px 20px}.portable-review .review-tool-popover h2{color:#30523e}.portable-review .review-tool-popover footer{background:#f8fbf8}.portable-review .review-management{border-radius:16px;border-color:#dce7df;box-shadow:0 24px 80px #142c3530}.portable-review .review-management::backdrop{background:#102c3b60;backdrop-filter:blur(3px)}
/* Document typography stays intact; align the surrounding reader chrome. */
.document-preview .document-topbar{border-color:#e0e8e3;min-height:82px;padding:18px 34px;box-shadow:none}.document-preview .document-identity>span{background:#eaf3ee;border-color:#d5e6da;color:#276950;border-radius:10px}.document-preview .document-download{background:#176b61;border-color:#176b61;border-radius:8px}.document-preview .document-download:hover{background:#11584f}.document-preview .document-paper{border-color:#e0e8e3;border-radius:14px;box-shadow:0 5px 24px #19323b04}.document-preview .document-toc a:hover,.document-preview .document-toc a:focus-visible{color:#176b61;border-left-color:#27877b}.document-preview .markdown-body a{color:#176b61}
@media(min-width:1700px){.content{padding-top:54px}.project-review-heading{padding-top:46px}}
@media(max-width:1250px){.layout{grid-template-columns:216px minmax(0,1fr)}.content{padding:30px 28px 60px}.topbar{padding:0 28px}.pagehead{align-items:flex-start}.pagehead .actions{flex-shrink:1}.pagehead h1{font-size:27px}.portable-review .review-topbar{padding:0 18px;gap:10px}.portable-review .review-project-switcher{flex-basis:180px;min-width:130px}.portable-review .review-project-trigger strong{font-size:14px}.portable-review .review-account{max-width:84px}.portable-review .review-top-modes>div>button{min-width:60px;padding:8px 10px}.portable-review .review-tools>button,.portable-review .review-tool-trigger{padding:0 8px;font-size:11px}.project-review-heading{padding-left:28px;padding-right:28px}.portable-review .home-dashboard{padding-left:28px;padding-right:28px}}
@media(max-width:1050px){.pagehead{flex-wrap:wrap}.grid2{grid-template-columns:1fr}.portable-review .review-topbar{height:auto;min-height:78px;flex-basis:auto;flex-wrap:wrap;padding:12px 18px;gap:10px 14px}.portable-review .review-top-actions{margin-left:auto}.portable-review .review-top-modes{margin-left:auto}.portable-review .review-project-switcher{flex-basis:200px}.portable-review .review-account{max-width:120px}.portable-review{--review-rail:235px}.portable-review .home-version-card{grid-template-columns:minmax(0,1fr) auto}.portable-review .home-version-card dl,.portable-review .home-focus-link{grid-column:1/-1}}
@media(max-width:760px){.layout{display:block}.sidebar{padding:16px;height:auto;overflow:visible}.brand{font-size:18px;padding:0}.brand-mark{width:32px;height:32px;font-size:12px}.brand small,.project-label,.sidebar-footer{display:none}.nav{gap:5px;margin-top:16px}.nav a{padding:9px 12px;font-size:12px}.nav-icon{display:none}.topbar{height:auto;min-height:64px;padding:12px 18px}.topbar .right{gap:8px}.content{padding:28px 18px 44px}.pagehead{margin-bottom:24px}.pagehead h1{font-size:25px}.stats{gap:12px}.stat{padding:20px}.stat strong{font-size:30px}.card{padding:20px;border-radius:12px}.table-scroll{padding:0}.workspace-tabs{gap:24px}.workspace-grid,.task-list{grid-template-columns:1fr}.project-review-heading{padding:26px 20px 4px}.project-review-heading h1{font-size:25px}.portable-review .home-dashboard{padding:20px}.portable-review .home-health-strip>span{padding:16px}.portable-review .home-health-strip b{font-size:21px}.portable-review .home-version-card{padding:20px}.portable-review .home-schedule-card>header{padding:16px 18px}.portable-review .review-topbar{padding:12px}.portable-review .review-top-modes{order:3;width:100%;justify-content:center;margin:0}.portable-review .review-top-actions{order:4;width:100%;justify-content:space-between;margin:0;gap:4px}.portable-review .review-tools>button,.portable-review .review-tool-trigger{font-size:12px;padding:0 10px}.portable-review .review-top-modes>div{flex:1}.portable-review .review-top-modes>div>button{width:100%}.portable-review .review-account{margin-left:auto}.portable-review .review-project-switcher{flex:1;max-width:calc(100% - 110px)}.portable-review .requirement-detail,.portable-review .version-stage{padding:24px 20px}.document-preview .document-topbar{padding:14px 18px}.login-aside{padding:36px}.login-aside h1{font-size:27px}#dialog{padding:22px;border-radius:14px}.formfooter{bottom:-22px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important}}

.portable-review .review-topbar .review-tool-trigger{border:0;background:#f2f6f3;border-radius:8px;padding:0 12px;color:#56716b}
.portable-review .review-topbar .review-tool-trigger:hover,.portable-review .review-topbar .review-tool-trigger[aria-expanded=true]{background:#e7f1ea;color:#176b61}
