/* Compact studio UI. Official image references are optional external links, never project assets. */
.studio-toolbar-panel{padding:0!important;border:0!important;background:transparent!important}.studio-toolbar-panel>.toolbar{margin-bottom:0}.space-card:only-child{grid-column:1/-1;display:grid;grid-template-columns:1fr 1.1fr}.space-card:only-child>.space-cover{height:100%;aspect-ratio:auto;min-height:420px}.space-card:only-child>.space-body{padding:30px}@media(max-width:1000px){.space-card:only-child{grid-template-columns:1fr}.space-card:only-child>.space-cover{height:260px;min-height:0}}
.board-task .actions{display:flex;align-items:center}.gallery .image-card:first-child{grid-column:auto}.gallery .image-card:first-child>img{height:auto;aspect-ratio:4/3;object-fit:cover}.task-more summary{line-height:30px}.method-card>p{overflow-wrap:anywhere}
.method-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.method-card{margin:0!important;display:flex;flex-direction:column}.method-card h2{font-size:16px;line-height:1.7}.method-card>p{font-size:13px;line-height:1.9}.method-card details{font-size:12px;color:#8296a4;margin:14px 0}.method-card button{align-self:flex-start;margin-top:auto}.catalog-card h2{font-size:17px;line-height:1.7}.catalog-card>p{font-size:13px;line-height:1.8}.catalog-card>a{font-size:12px}.review-thumbnail{width:100%;aspect-ratio:16/8;object-fit:cover;border-radius:7px;cursor:zoom-in;margin-bottom:16px}.restore-history{font-size:12px;margin-top:24px;color:#7e919e}.studio-toolbar .knowledge-tabs{margin:0}.studio-toolbar #knowledge-search{max-width:300px}@media(max-width:900px){.method-grid{grid-template-columns:1fr}}
.project-bar{padding:25px 38px 26px;align-items:center}.project-bar .eyebrow{display:none}.project-bar h1{font-size:25px;margin:0;font-weight:600;letter-spacing:.5px}.main-grid{padding:0 38px 40px}.workspace>header{height:62px}.panel{padding:25px;border-radius:12px;margin-bottom:22px}.panel h2{font-size:17px;font-weight:550}.studio-toolbar{display:flex;align-items:center;justify-content:space-between;margin:0 0 22px;gap:16px}.subtle-count{color:#7c8d9a;font-size:12px}.section-kicker{font-size:10px;letter-spacing:1.7px;color:#8a9aa5;margin-bottom:16px}.studio-toolbar .actions{display:flex;gap:10px}.brief-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:24px}.brief-primary{padding:32px}.brief-entry{padding:26px 0;border-bottom:1px solid #edf1f4}.brief-entry:last-child{border:0}.brief-entry h2{margin-bottom:14px}.brief-entry p,.brief-secondary p{font-size:14px;line-height:1.95;color:#486070;overflow-wrap:anywhere}.brief-secondary{padding:25px 28px}.brief-secondary h2{font-size:14px;color:#284457;margin-bottom:12px}.history-entry{border-bottom:1px solid #e9eef2;padding:18px 0}.history-entry h3 span,.history-entry>span{display:block;color:#8b99a3;font-size:11px;margin-top:6px;font-weight:400}.history-entry p{white-space:pre-wrap;line-height:1.8}.history-entry p b{font-size:12px;color:#81929e}.project-directory{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.directory-card{padding:26px;min-width:0;display:flex;flex-direction:column;margin:0}.directory-mark{height:68px;width:68px;display:grid;place-items:center;background:#edf3f5;color:#476c7e;font-family:serif;font-size:28px;border-radius:10px;margin-bottom:32px}.directory-card h2{font-size:19px;line-height:1.65;margin:0 0 14px}.directory-bottom{border-top:1px solid #edf1f4;padding-top:20px;margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:10px}.directory-card>p{margin:0 0 27px}.space-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.space-card{padding:0;overflow:hidden}.space-cover{width:100%;aspect-ratio:16/8;object-fit:cover;display:block}.space-placeholder{height:150px;display:grid;place-items:center;background:#eaf0f4}.space-placeholder svg{width:40px;height:40px;fill:none;stroke:#8fa5b5;stroke-width:1}.space-body{padding:26px}.space-body .toolbar{margin:0}.space-body h2{font-size:23px;margin:0}.space-body .section-kicker{margin-bottom:7px}.space-notes{margin:24px 0}.space-notes>div{padding:14px 0;border-top:1px solid #edf1f4}.space-notes dt{font-size:12px;color:#8495a1}.space-notes dd{font-size:13px;color:#405e71;margin:7px 0 0;line-height:1.8;white-space:pre-wrap}.task-board{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;align-items:start}.board-column{background:#edf1f5;border-radius:11px;padding:14px;min-width:0}.board-heading{display:flex;align-items:center;justify-content:space-between;padding:7px 3px 18px}.board-heading h2{margin:0;font-size:13px;font-weight:600}.board-heading>span{font-size:11px;background:#dfe7ed;color:#657f91;border-radius:4px;padding:1px 6px}.board-task{background:white;border:1px solid #e2e9ef;border-radius:9px;padding:18px;margin-bottom:13px}.board-task h3{font-size:13px;line-height:1.85;font-weight:550;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;margin:12px 0}.board-task .task-meta{font-size:10px;gap:8px}.board-task .actions{border-top:1px solid #f0f3f6;padding-top:12px;margin-top:15px;gap:5px;flex-wrap:wrap}.board-task .actions>button{font-size:10px;padding:4px 6px}.board-task .actions>.muted{display:none}.board-empty{font-size:12px;text-align:center;padding:28px 0;color:#8c9da9}.task-more{position:relative;margin:0;border:0;padding:0}.task-more summary{font-size:19px;list-style:none;cursor:pointer;padding:0 5px}.task-more summary::-webkit-details-marker{display:none}.task-more>div{position:absolute;right:0;z-index:10;width:150px;background:white;border:1px solid #e2e8ed;box-shadow:0 8px 24px #15364e12;padding:7px;border-radius:8px}.task-more button{display:block;border:0;width:100%;text-align:left}.settings-layout{display:grid;grid-template-columns:1fr 1fr;gap:24px}.settings-layout .panel{margin:0}.profile-heading{display:flex;align-items:center;gap:18px;margin:22px 0 30px}.profile-heading h2{font-size:23px;margin:0}.profile-monogram{background:#e8f0f4;color:#385f77;font-size:23px;display:grid;place-items:center;width:64px;height:64px;border-radius:50%}.setting-row{display:flex;align-items:center;justify-content:space-between;padding:18px 0;border-top:1px solid #edf1f4;font-size:13px}.setting-row span{color:#8b99a3}.setting-row strong{font-weight:500;color:#3d596b}.settings-boundary{grid-column:1/-1}.settings-boundary details{margin-top:18px;font-size:12px;color:#8b9aa5}.settings-layout .actions{margin-top:27px;display:flex;gap:10px}.export-composer .form-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin:24px 0}.export-composer>button{min-width:150px}.export-item{display:flex;align-items:center;gap:17px;padding:20px 0;border-top:1px solid #edf1f4}.export-item>div:nth-child(2){flex:1}.export-item h3{font-size:14px;margin:0}.export-icon{width:44px;height:52px;border-radius:6px;background:#eaf1f5;color:#4a6c82;font-size:11px;display:grid;place-items:center}.download-button{border:1px solid #dfe7ed;border-radius:6px;padding:8px 15px;font-size:12px}.deliverable-row{display:flex;align-items:center;gap:22px;padding:18px 0;border-top:1px solid #edf1f4}.deliverable-row>div{flex:1}.deliverable-row strong{font-size:13px;font-weight:500}.deliverable-row small{display:block;color:#8c9aa5;font-size:11px;margin-top:7px}.deliverable-row>a{font-size:12px}.studio-comparison{border:1px solid #e3e9ef;border-radius:10px;background:white;margin:0 0 24px;padding:0}.studio-comparison>summary{padding:18px 23px;color:#48687c;font-size:13px;cursor:pointer}.studio-comparison>.panel{border:0;margin:0}.gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:start;margin:0 0 24px}.gallery .image-card{margin:0;min-width:0}.gallery .image-card>img{width:100%;aspect-ratio:4/3;height:auto;object-fit:cover;cursor:zoom-in}.image-card .info{padding:18px}.image-card .info h3{font-size:14px;margin:10px 0}.gallery .image-card .toolbar{display:block}.gallery .image-card .toolbar>.tag{margin-top:7px}.gallery .image-card .actions{gap:10px;flex-wrap:wrap}.gallery .image-card .actions button,.gallery .image-card .actions a{font-size:11px}.project-edit-bar{border:0!important;background:transparent!important;padding:0!important;margin-bottom:12px!important;display:flex;justify-content:flex-end}.project-edit-bar button{font-size:11px}.case-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.case{padding:24px;border-radius:11px}.case h3{font-size:16px}.case>p:not(.muted){display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;line-height:1.8;font-size:13px}.knowledge-rule{padding:19px 0}.knowledge-rule p{font-size:13px;line-height:1.9}.knowledge-tabs{display:flex;gap:8px;margin-bottom:22px}.knowledge-tabs .selected{background:#e7eef3;color:#173b52}.compact-table{font-size:12px}.compact-table th{font-size:11px;font-weight:500;color:#8498a6}#review-history{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:25px}#review-history .source-row{border:1px solid #e6ecf0;border-radius:9px;padding:22px}#review-history .source-row h3{font-size:15px}.project-bar+.main-grid #content>.panel>.toolbar h2{font-size:17px}.preserve{overflow-wrap:anywhere}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid #749ab6;outline-offset:3px}
@media(max-width:1500px){.project-directory,.case-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:1250px){.task-board{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:1100px){.gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:1000px){.brief-layout,.space-grid,.settings-layout{grid-template-columns:1fr}.settings-boundary{grid-column:auto}.project-bar{padding:22px}.main-grid{padding:0 22px 30px}.export-composer .form-grid{grid-template-columns:1fr}.project-directory{grid-template-columns:1fr}}@media(max-width:700px){.task-board,.gallery,#review-history,.case-grid{grid-template-columns:1fr}.studio-toolbar{flex-wrap:wrap}.brief-primary{padding:23px}.deliverable-row{gap:10px}.project-bar{gap:15px;flex-wrap:wrap}}
/* Desktop rhythm: 20 / 16 / 14 / 13 px, with an 8 px spacing scale. */
.project-edit-bar button{font-size:13px}
:root{--ui-title:20px;--ui-section:16px;--ui-body:14px;--ui-meta:13px;--muted:#778391}
body{font:400 var(--ui-body)/1.6 -apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;letter-spacing:0}
.sidebar{width:208px;padding:24px 12px 16px}.workspace{margin-left:208px}.brand{font-size:22px;letter-spacing:3px;padding:0 12px}.brand .brand-mark{display:none}.brand>span:last-child{font-size:10px;letter-spacing:2px;margin-top:4px}.nav-label{margin:24px 12px 12px;font-size:12px;letter-spacing:0}nav button{min-height:40px;font-size:14px;line-height:22px;padding:8px 12px;margin:2px 0;gap:12px}nav button.active{padding:7px 11px}nav svg{width:17px;height:17px}
.workspace>header{height:56px;padding:0 24px;font-size:13px}.header-right{gap:12px}.header-right button{font-size:13px;min-height:32px;padding:4px 12px}.project-bar{padding:20px 24px 16px;gap:16px}.project-bar h1{font-size:20px;line-height:28px;font-weight:600;letter-spacing:0;margin:0}.project-select{font-size:12px;letter-spacing:0}.project-select select{font-size:13px;min-height:32px;padding:4px 10px;margin-top:4px;min-width:260px}.main-grid{padding:0 24px 32px;max-width:none}
h1{font-size:20px;line-height:28px;letter-spacing:0}h2,.panel h2,.project-bar+.main-grid #content>.panel>.toolbar h2{font-size:16px;line-height:24px;font-weight:600;letter-spacing:0}h3{font-size:14px;line-height:22px}.panel{padding:20px;border-radius:8px;margin-bottom:16px;box-shadow:none}.toolbar,.studio-toolbar{margin-bottom:16px;gap:16px}.muted,.subtle-count,.field,.task-meta,.section-kicker{font-size:13px;line-height:21px;letter-spacing:0}.section-kicker{margin-bottom:12px}p{line-height:1.65}button,input,select,textarea{font-size:14px;line-height:22px;letter-spacing:0}button{min-height:36px;padding:6px 14px;border-radius:5px}.small,button.small,.quiet.small,.outline.small{font-size:13px;line-height:20px;min-height:32px;padding:5px 10px}.field{font-size:13px!important;line-height:21px}input,select{min-height:34px;padding:5px 10px}textarea{padding:8px 10px;min-height:88px;line-height:22px}.tag,.stage-pill{font-size:12px;line-height:20px;padding:2px 8px;border-radius:4px}.form-grid{gap:12px 20px}.form-actions{gap:12px}.empty{padding:32px 20px;font-size:14px}
#shell:has(#navigation [data-nav=home].active) .project-bar{display:none}#shell:has(#navigation [data-nav=home].active) .main-grid{padding-top:24px}.portfolio-intro{padding:0;margin:0 0 20px;min-height:36px}.portfolio-intro .eyebrow,.portfolio-intro p{display:none}.portfolio-intro :is(h1,h2){font-size:20px;line-height:28px;font-weight:600;letter-spacing:0;margin:0}.portfolio-stats{gap:16px;margin-bottom:20px}.portfolio-stat{padding:16px 20px;border-radius:8px;gap:8px}.portfolio-stat>span{font-size:13px;line-height:20px;color:#748190}.portfolio-stat strong{font-size:28px;line-height:34px;font-weight:500;font-variant-numeric:tabular-nums}.portfolio-stat small{font-size:13px;margin-left:8px}.portfolio-projects .toolbar h2{margin-bottom:0}.portfolio-projects .toolbar p{display:none}.portfolio-row{grid-template-columns:minmax(200px,1.35fr) 104px minmax(320px,1.5fr) 48px 90px 104px;gap:16px;padding:18px 0;min-height:78px}.portfolio-row h3{font-size:14px;line-height:22px;margin:0 0 5px;font-weight:500}.portfolio-row .muted,.portfolio-row time{font-size:13px;line-height:20px}.portfolio-row small{margin-top:5px}.portfolio-table-head{font-size:13px;line-height:20px;color:#7b8795;padding:10px 0;min-height:40px}.milestone-strip{gap:12px;flex-wrap:nowrap}.milestone-strip span{display:inline-flex;align-items:center;gap:5px;font-size:13px;line-height:22px;color:#8995a2;background:none;border:0;border-radius:0;padding:0;white-space:nowrap}.milestone-strip span:before{content:'';width:5px;height:5px;border-radius:50%;background:#d8dee5;flex-shrink:0}.milestone-strip .recorded{background:none;border:0;color:#476e87}.milestone-strip .recorded:before{background:#5a899f}.pending-count{font-size:14px;line-height:22px}.portfolio-bottom{gap:16px}.portfolio-task,.portfolio-event{padding:16px 0;gap:12px}.portfolio-task strong,.portfolio-event strong{font-size:14px;line-height:22px;font-weight:400}.portfolio-task small,.portfolio-event small,.task-status,.event-date{font-size:13px;line-height:20px}.portfolio-empty{font-size:13px;padding:24px 0}
.brief-layout,.space-grid,.settings-layout,.project-directory,.method-grid,.case-grid,.gallery,.cards,.file-grid{gap:16px}.brief-primary,.brief-secondary,.directory-card,.case,.space-body{padding:20px}.brief-entry{padding:20px 0}.brief-entry h2{font-size:16px;margin-bottom:10px}.brief-entry p,.brief-secondary p{font-size:14px;line-height:24px}.brief-secondary h2{font-size:14px;line-height:22px;margin-bottom:8px}.directory-mark{width:48px;height:48px;font-size:22px;margin-bottom:20px}.directory-card h2{font-size:16px;line-height:24px;margin-bottom:12px}.directory-card>p{font-size:13px;margin-bottom:20px}.directory-bottom{padding-top:16px}.space-body h2{font-size:18px;line-height:26px}.space-notes{margin:16px 0}.space-notes>div{padding:12px 0}.space-notes dt{font-size:13px}.space-notes dd{font-size:14px;line-height:22px;margin-top:6px}.space-card:only-child>.space-body{padding:24px}.profile-heading h2{font-size:20px}.setting-row{padding:14px 0;font-size:14px}.settings-layout .actions{margin-top:20px}
.board-column{padding:12px}.board-heading{padding:4px 0 12px}.board-heading h2{font-size:14px}.board-heading>span{font-size:12px}.board-task{padding:16px;margin-bottom:12px}.board-task h3{font-size:14px;line-height:23px;font-weight:500;margin:12px 0}.board-task .task-meta{font-size:12px}.board-task .actions{gap:8px;margin-top:12px;padding-top:12px}.board-task .actions>button{font-size:13px;line-height:20px;padding:4px 8px;min-height:30px}.board-empty{font-size:13px;padding:24px 0}.task-more summary{min-width:28px;line-height:30px;text-align:center}.file-toolbar{margin:0 0 20px;gap:16px}.file-tabs button{font-size:14px;padding:6px 14px}.file-caption{padding:14px 16px}.file-caption h3{font-size:14px;line-height:22px}.file-caption p,.file-open{font-size:13px}.image-card .info{padding:16px}.image-card .info h3{font-size:14px;line-height:22px}.gallery .image-card .actions{gap:10px}.gallery .image-card .actions button,.gallery .image-card .actions a{font-size:13px}.tile-copy small{font-size:13px}.tile-copy strong{font-size:14px}.action-tile{padding:16px;gap:12px}.home-actions{gap:16px;margin-bottom:20px}.tile-number{font-size:22px}.home-heading h2{font-size:22px}.hero-action{font-size:14px}.export-composer .form-grid{margin:20px 0}.export-item,.deliverable-row{padding:16px 0;gap:16px}.export-item h3,.deliverable-row strong{font-size:14px}.deliverable-row small,.download-button,.deliverable-row>a{font-size:13px}.studio-comparison>summary{padding:14px 20px;font-size:14px}.compact-table td,.compact-table th{font-size:13px;padding:12px}.history-entry p,.method-card>p,.catalog-card>p,.case>p:not(.muted){font-size:14px;line-height:23px}.method-card h2,.catalog-card h2,.case h3{font-size:16px;line-height:24px}.case a,.catalog-card>a{font-size:13px}.knowledge-tabs button{font-size:14px}.project-version{font-size:13px}
@media(max-width:1300px){.portfolio-table{overflow:auto}.portfolio-row{min-width:1000px}.portfolio-bottom{grid-template-columns:1fr}.gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:850px){.sidebar{width:auto;position:static;padding:16px}.workspace{margin-left:0}.brand{font-size:22px}.nav-label{display:none}nav button{min-height:36px}.project-bar,.main-grid{padding-left:16px;padding-right:16px}.workspace>header{padding:0 16px}.project-bar{flex-wrap:wrap}.portfolio-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.portfolio-intro{gap:12px}.gallery{grid-template-columns:1fr}}
/* Customer requirements: compact brief, not an empty questionnaire. */
.requirement-welcome{background:#fff;border:1px solid #e3e9ef;border-radius:10px;min-height:330px;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:40px 24px;text-align:center}
.requirement-file-icon{width:56px;height:56px;background:#edf3f8;border-radius:14px;display:grid;place-items:center;color:#244d68;margin-bottom:16px}.requirement-file-icon svg{width:25px;height:25px}
.requirement-file-icon svg{fill:none;stroke:currentColor;stroke-width:1.5}.requirement-welcome h2{font-size:20px;margin:0 0 8px}.requirement-welcome p{color:#718092;margin:0 0 24px}.requirement-welcome small{color:#8995a4;margin-top:20px;font-size:12px}
.requirement-panel{padding:0!important;overflow:hidden}.requirement-tools{padding:16px 20px;display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid #e9edf2}.requirement-tools .file-tabs{flex-wrap:wrap}.requirement-tools>input{max-width:210px}
.requirement-row{display:grid;grid-template-columns:200px minmax(0,1fr) 170px;gap:24px;padding:16px 24px;border-bottom:1px solid #edf0f5;align-items:start}.requirement-row:last-child{border:0}.requirement-row h2{font-size:14px!important;margin:0 0 6px!important}.req-category{font-size:12px;color:#7b8c9b}.requirement-row p{font-size:14px;line-height:1.8;margin:0;overflow-wrap:anywhere}.requirement-tail{display:flex;align-items:center;justify-content:flex-end;gap:12px;min-width:0}.requirement-tail>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.requirement-tail button{flex-shrink:0}
#form-dialog:has(.req-import){width:min(1080px,calc(100vw - 64px));max-width:1080px}.req-import-heading{display:flex;justify-content:space-between;gap:24px;align-items:center}.req-import-heading p{margin:6px 0}.req-import-heading label{font-size:12px;color:#718092;min-width:205px}.req-import-heading select{display:block;width:100%;margin-top:6px}.req-import-warning{font-size:12px;background:#f5f7fa;color:#728194;padding:10px 12px;border-radius:6px}.req-preview-table{border:1px solid #e4e9ef;border-radius:6px;max-height:48vh;overflow:auto}.req-preview-head,.req-preview-row{display:grid;grid-template-columns:40px minmax(160px,1fr) minmax(200px,1.6fr);gap:16px;padding:12px 16px}.req-preview-head{background:#f6f8fb;color:#718092;font-size:12px;position:sticky;top:0;z-index:1}.req-preview-row{border-top:1px solid #edf0f4;align-items:start}.req-preview-row>[type=checkbox]{width:16px;height:16px;margin-top:10px}.req-preview-row>div{display:flex;flex-direction:column;gap:8px}.req-preview-row small{color:#8a96a4;font-size:12px}.req-preview-row input,.req-preview-row select,.req-preview-row textarea{width:100%;min-width:0}.req-preview-row textarea{min-height:90px;resize:vertical;font-size:14px;line-height:1.6}.req-upload>p:first-child{margin-top:0}.req-upload input[type=file]{padding:18px;background:#f7f9fc;border:1px dashed #cdd9e4;border-radius:6px}
@media(max-width:1300px){.requirement-row{grid-template-columns:160px minmax(0,1fr) 130px;gap:16px}.requirement-tools{align-items:flex-start}.requirement-tools .file-tabs{gap:4px}}@media(max-width:800px){.requirement-row{grid-template-columns:1fr}.requirement-tail{align-items:flex-start}.requirement-tools{flex-direction:column}.req-import-heading{flex-direction:column;align-items:stretch}}
/* Homepage service map: every stage exposes roles and its tangible output. */
.design-journey{background:#fff;border:1px solid #e0e7ef;border-radius:10px;padding:22px 24px 16px;margin-bottom:20px}
.journey-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px}
.journey-heading h2{font-size:18px;line-height:26px;margin:0 0 5px;color:#17374d;font-weight:600}
.journey-heading p{font-size:13px;line-height:20px;color:#7c8998;margin:0}.journey-legend{display:flex;gap:16px;flex-shrink:0}.journey-legend span{display:flex;align-items:center;gap:6px;font-size:12px;color:#677587}.journey-legend span:before{content:'';width:7px;height:7px;border-radius:2px;background:#3875b5}.journey-legend span:nth-child(2):before{background:#7161a7}.journey-legend span:nth-child(3):before{background:#31867b}.journey-footnote{font-size:12px;color:#7c8998;margin:12px 0 0;text-align:right}
.journey-grid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.journey-step{min-width:0;position:relative}.journey-step:nth-child(n+5){grid-row:2}.journey-step:nth-child(5){grid-column:4}.journey-step:nth-child(6){grid-column:3}.journey-step:nth-child(7){grid-column:2}.journey-step:nth-child(8){grid-column:1}.journey-card{--journey-accent:#3875b5;--journey-tint:#edf4fc;--journey-border:#d9e6f5;position:relative;text-align:left;display:flex;flex-direction:column;width:100%;height:100%;padding:16px;border:1px solid var(--journey-border);border-top:3px solid var(--journey-accent);background:var(--journey-tint);color:#263b4a;border-radius:8px;white-space:normal;transition:border-color .15s,box-shadow .15s,transform .15s;box-shadow:none}.journey-create{--journey-accent:#7161a7;--journey-tint:#f3f0fa;--journey-border:#e4ddf1}.journey-deliver{--journey-accent:#31867b;--journey-tint:#edf6f3;--journey-border:#d6e9e2}
.journey-card:hover{background:var(--journey-tint);border-color:var(--journey-accent);box-shadow:0 4px 14px #24455e12;transform:translateY(-2px)}.journey-card:focus-visible{outline:2px solid var(--journey-accent);outline-offset:3px}
.journey-card-head{display:flex;align-items:center;gap:10px;margin-bottom:14px;width:100%}.journey-icon{width:36px;height:36px;border-radius:9px;background:var(--journey-accent);color:#fff;display:grid;place-items:center;flex-shrink:0}.journey-icon svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linejoin:round;stroke-linecap:round}.journey-index{display:block;font-size:10px;line-height:14px;letter-spacing:1px;color:var(--journey-accent);font-variant-numeric:tabular-nums;margin-bottom:2px}.journey-card h3{font-size:15px;line-height:22px;font-weight:600;margin:0;color:#243d50}.journey-arrow{color:var(--journey-accent);opacity:.65;margin-left:auto;font-size:18px;font-weight:400}
.journey-card dl{padding:0;margin:0;width:100%;flex:1;display:flex;flex-direction:column;gap:10px}.journey-card dl>div{display:grid;grid-template-columns:45px minmax(0,1fr);gap:8px;align-items:start}.journey-card dt{font-size:12px;line-height:20px;font-weight:400;color:#7a8796;white-space:nowrap}.journey-card dd{font-size:13px;line-height:20px;font-weight:400;margin:0;color:#536777;overflow-wrap:anywhere}.journey-card dl>.journey-assist{display:block;padding:10px 12px;border-radius:6px;background:#ffffffb8;min-height:66px}.journey-assist dt{font-size:11px;color:var(--journey-accent);margin-bottom:3px}.journey-assist dd{font-size:14px;line-height:21px;color:#263f54;font-weight:500}.journey-human{padding:0 2px}.journey-card .journey-output{border-top:1px solid var(--journey-border);padding-top:10px;margin-top:auto}.journey-card .journey-output dd{color:#294c64;font-weight:500}
.journey-capability{display:inline-flex;align-items:center;gap:5px;font-size:11px;line-height:18px;margin-top:12px;font-weight:400;color:#638399}.journey-capability i{width:4px;height:4px;border-radius:50%;background:currentColor}.journey-capability.reference{color:#6b7897}.journey-capability.external{color:#7c8590}.journey-capability.planned{color:#ac8450}
.journey-arrow:before{content:'→'}.journey-step:nth-child(4) .journey-arrow:before{content:'↓'}.journey-step:nth-child(n+5) .journey-arrow:before{content:'←'}.journey-step:last-child .journey-arrow:before{content:''}
.journey-detail-output{background:#eff5fa;padding:16px;border-radius:7px;margin:16px 0}.journey-detail-output>span{color:#71899b;font-size:12px}.journey-detail-output p{margin:6px 0 0;font-size:14px;line-height:24px;color:#284c65}.journey-detail dl{margin:20px 0;display:flex;flex-direction:column;gap:16px}.journey-detail dl>div{display:grid;grid-template-columns:96px 1fr;gap:16px}.journey-detail dt{font-size:13px;line-height:23px;color:#8191a0}.journey-detail dd{margin:0;font-size:14px;line-height:23px;color:#425767}.journey-detail .field{margin-top:20px}
@media(min-width:1600px){.journey-card{padding:18px 20px}}
@media(max-width:1100px){.journey-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.journey-step:nth-child(n){grid-row:auto;grid-column:auto}.journey-step:nth-child(n) .journey-arrow:before{content:'→'}.journey-step:nth-child(2n) .journey-arrow:before{content:'↓'}.journey-step:last-child .journey-arrow:before{content:''}}
@media(max-width:750px){.journey-heading{align-items:flex-start;flex-direction:column;gap:12px}.journey-legend{gap:14px}.journey-footnote{text-align:left}}
@media(max-width:600px){.design-journey{padding:18px 16px}.journey-grid{grid-template-columns:1fr}.journey-step:nth-child(n) .journey-arrow:before{content:'↓'}.journey-step:last-child .journey-arrow:before{content:''}.journey-detail dl>div{grid-template-columns:1fr;gap:4px}}
@media(prefers-reduced-motion:reduce){.journey-card{transition:none}.journey-card:hover{transform:none}}
/* One project workspace: identity, confirmed progress, stage checklist and files. */
#shell:has([data-nav=overview].active) .project-select{color:#244b68;font-size:13px;font-weight:500}
#shell:has([data-nav=overview].active) .project-select select{min-width:320px;border-color:#8eafca;background:#fff;font-size:14px;min-height:40px;color:#173b52}
.project-workspace-summary{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:18px}
.project-workspace-identity{display:flex;gap:18px;align-items:center;min-width:0}.project-workspace-identity>img{width:108px;height:76px;object-fit:cover;border-radius:7px;flex-shrink:0}.project-workspace-identity h2{font-size:23px;line-height:32px;margin:0 0 8px;overflow-wrap:anywhere}.project-workspace-identity p{font-size:13px;margin:0;color:#768797;display:flex;gap:10px;flex-wrap:wrap}.project-overview-actions{display:flex;gap:10px;flex-shrink:0}.project-overview-actions button{font-size:13px}.workspace-project-icon{width:66px;height:66px;background:#e4eef6;color:#37678b;display:grid;place-items:center;border-radius:10px}.workspace-project-icon svg{width:30px;height:30px;stroke:currentColor;stroke-width:1.5;fill:none}
.workspace-current{display:flex;align-items:center;justify-content:space-between;gap:24px;background:#eaf2fa;border:1px solid #cfdfed;border-left:4px solid #3978b0;border-radius:7px;padding:16px 20px;margin-bottom:20px}.workspace-current>div{display:flex;align-items:center;gap:14px;min-width:0}.workspace-current-label,.workspace-next>span{color:#5c7b96;font-size:12px;white-space:nowrap}.workspace-current strong{font-size:16px;line-height:24px;font-weight:600;color:#224763}.workspace-next{flex:1;padding-left:24px;border-left:1px solid #ceddeb}.workspace-next strong{font-size:14px;font-weight:400;overflow-wrap:anywhere}.workspace-current>button{flex-shrink:0;font-size:13px;color:#2c5e84}
.workspace-status{font-size:12px;padding:2px 8px;border-radius:4px;background:#fff}.status-0,.status--1{color:#8a96a4}.status-1{color:#2674b1}.status-2{color:#a8782d}.status-3{color:#258474}
.workspace-stages{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:8px;margin-bottom:24px}.workspace-stages>button{background:#fff;border:1px solid #e0e7ef;color:#345069;padding:12px 10px;text-align:left;border-radius:7px;display:grid;grid-template-columns:22px 1fr;gap:3px 5px;position:relative;min-width:0;box-shadow:none}.workspace-stages>button:not(:last-child):after{content:'›';position:absolute;right:-8px;top:30%;color:#9aaebe;z-index:1;font-size:18px}.workspace-step-number{font-size:11px;line-height:22px;color:#8b9baa;grid-row:1/3}.workspace-stages strong{font-size:13px;font-weight:500;line-height:22px;white-space:nowrap}.workspace-stages small{font-size:12px;line-height:20px}.workspace-stages>button.selected{background:#eaf2fb;border-color:#70a2cd}.workspace-stages>button.is-current:before{content:'';width:6px;height:6px;background:#3981bf;border-radius:50%;position:absolute;right:8px;top:8px}.workspace-stages>button:hover{border-color:#7fa6c6}
.workspace-material-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}.workspace-view-tabs{display:flex;gap:4px}.workspace-view-tabs>button{font-size:14px;border:0;background:none;color:#7c8a99;padding:8px 12px;white-space:nowrap}.workspace-view-tabs>button.selected{color:#224e70;background:#e6eef6}.workspace-view-tabs button>span{font-size:11px;padding:1px 5px;background:#e9edf2;color:#6d8194;border-radius:4px;margin-left:5px}.workspace-file-tools{display:flex;align-items:center;gap:10px}.workspace-file-tools input{width:200px;background:#fff}.workspace-file-tools select{width:126px;background:#fff}.workspace-file-tools input,.workspace-file-tools select,.workspace-file-tools button{font-size:13px;min-height:36px}
.workspace-stage-content{display:grid;grid-template-columns:260px minmax(0,1fr);gap:20px;align-items:start}.workspace-stage-content:has(>.hidden){grid-template-columns:1fr}.workspace-checklist{background:#fff;border:1px solid #e2e8ef;border-radius:8px;padding:18px}.workspace-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.workspace-section-heading h2{font-size:15px;line-height:22px;margin:0;font-weight:600}.workspace-section-heading>span{font-size:12px;color:#8696a5}.workspace-section-heading button{font-size:12px;min-height:28px;padding:3px 6px}.workspace-checklist-label{font-size:12px;margin:0;color:#8b98a6}.workspace-checklist-row{display:flex;gap:8px;padding:16px 0;border-bottom:1px solid #edf0f5;align-items:flex-start}.workspace-checklist-row:last-child{border-bottom:0}.workspace-checklist-row>div{flex:1;min-width:0}.workspace-checklist-row strong{font-size:13px;font-weight:500;line-height:22px;display:block}.workspace-checklist-row small{display:block;font-size:12px;color:#8996a3;line-height:20px;margin-top:4px}.workspace-check{width:17px;height:17px;margin-top:3px;display:grid;place-items:center;font-size:11px;color:#9aa9b7;background:#f1f4f8;border-radius:50%;flex-shrink:0}.workspace-check.has{color:#328577;background:#e7f4ef}.workspace-checklist-row>button{min-height:26px;line-height:20px;padding:2px 6px;font-size:17px;color:#507a9c}.workspace-required{display:inline-block;font-size:10px;color:#8b98a6;line-height:17px;margin-top:4px}.workspace-required.required{color:#9d7741;background:#fbf3e7;border-radius:3px;padding:0 5px}.workspace-stage-note{margin-top:16px;padding:12px;background:#f5f8fb;border-radius:5px}.workspace-stage-note b{font-size:12px;font-weight:500}.workspace-stage-note p{font-size:13px;margin:6px 0;white-space:pre-wrap;overflow-wrap:anywhere}.workspace-stage-note small{font-size:11px;color:#8696a5}
.workspace-record-link{display:flex;width:100%;gap:12px;align-items:center;background:#fff;border:1px solid #dbe6ee;border-radius:7px;padding:14px 16px;margin-bottom:16px;text-align:left;color:#2d526c}.workspace-record-link>span{width:34px;height:34px;background:#edf3f9;border-radius:6px;display:grid;place-items:center}.workspace-record-link svg{width:19px;height:19px;stroke:currentColor;fill:none;stroke-width:1.5}.workspace-record-link>div{flex:1}.workspace-record-link strong{display:block;font-size:14px;font-weight:500}.workspace-record-link small{display:block;font-size:12px;color:#8493a2;margin-top:3px}.workspace-record-link>b{font-size:12px;font-weight:400}
.workspace-records-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;margin-bottom:20px}.workspace-records-grid .workspace-record-link{margin:0}
.workspace-file-group{margin-bottom:22px}.workspace-file-group>.workspace-section-heading{padding:0 2px}.workspace-file-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.workspace-stage-content:has(>.hidden) .workspace-file-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.workspace-file{min-width:0;background:#fff;border:1px solid #e1e8ef;border-radius:8px;overflow:visible}.workspace-file-cover{display:block;position:relative;width:100%;aspect-ratio:16/10;background:#edf2f7;border-radius:7px 7px 0 0;overflow:hidden}.workspace-file-cover img{width:100%;height:100%;object-fit:cover;display:block}.workspace-file-open{position:absolute;right:8px;bottom:8px;padding:2px 7px;background:#fffE;border-radius:4px;color:#43647b;font-size:11px;opacity:0;transition:opacity .15s}.workspace-file-cover:hover .workspace-file-open,.workspace-file-cover:focus-visible .workspace-file-open{opacity:1}.workspace-document{height:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:6px;color:#708da5;background:linear-gradient(135deg,#f0f5fa,#e5edf5)}.workspace-document svg{width:38px;height:38px;stroke:currentColor;stroke-width:1.2;fill:none}.workspace-document b{font-size:11px;letter-spacing:1px;font-weight:500}.workspace-file-caption{padding:12px 14px}.workspace-file-caption h3{font-size:13px;line-height:21px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:0}.workspace-file-caption p{font-size:11px;line-height:18px;color:#8b99a6;margin:4px 0 8px}.workspace-file-footer{display:flex;justify-content:space-between;align-items:center;gap:8px}.workspace-file-footer>span{font-size:11px;color:#9b8257;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.workspace-file-footer>span.confirmed{color:#708b80}.workspace-file-footer .file-menu{flex-shrink:0}.workspace-files-empty{border:1px dashed #d9e3ed;border-radius:8px;background:#fbfcfe;min-height:230px;padding:32px 24px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#8a9dad}.workspace-files-empty svg{width:30px;height:30px;stroke:currentColor;fill:none;stroke-width:1.3;margin-bottom:12px}.workspace-files-empty h3{font-size:14px;font-weight:500;color:#5e788d;margin:0}.workspace-files-empty p{font-size:13px;max-width:360px;line-height:22px;margin:8px 0 0}
@media(min-width:1700px){.workspace-file-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.workspace-stage-content:has(>.hidden) .workspace-file-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(max-width:1350px){.workspace-stages{grid-template-columns:repeat(4,minmax(0,1fr))}.workspace-stages>button:nth-child(4):after{content:''}.workspace-stage-content{grid-template-columns:235px minmax(0,1fr)}.workspace-file-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.workspace-stage-content:has(>.hidden) .workspace-file-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.workspace-material-toolbar{flex-wrap:wrap}.workspace-next{padding-left:14px}.workspace-current{gap:14px}}
@media(max-width:850px){.project-workspace-summary{align-items:flex-start;flex-direction:column}.project-workspace-identity h2{font-size:20px}.workspace-current{flex-wrap:wrap}.workspace-next{flex-basis:65%}.workspace-stage-content{grid-template-columns:1fr}.workspace-checklist{padding:16px}.workspace-checklist-row{padding:10px 0}.workspace-material-toolbar{gap:12px}.workspace-file-tools{flex-wrap:wrap;width:100%}.workspace-file-tools input{flex:1;min-width:120px}.workspace-file-grid,.workspace-stage-content:has(>.hidden) .workspace-file-grid{grid-template-columns:repeat(2,minmax(0,1fr))}#shell:has([data-nav=overview].active) .project-select select{min-width:250px}}
@media(max-width:500px){.workspace-stages{grid-template-columns:repeat(2,minmax(0,1fr))}.workspace-stages>button:after{display:none}.workspace-file-grid,.workspace-stage-content:has(>.hidden) .workspace-file-grid{grid-template-columns:1fr}.workspace-current>div{flex-wrap:wrap}.workspace-next{border:0;padding:0}.project-workspace-identity>img{width:80px;height:68px}}
.library-toolbar{margin-bottom:14px!important;gap:16px}.library-toolbar input{width:310px;font-size:13px}.library-filters{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:22px}.library-filters>span{font-size:12px;color:#8a99a6}.library-directions{display:flex;flex-wrap:wrap;gap:8px}.library-directions button{border:0;background:none;color:#70818e;font-size:13px;padding:6px 12px;border-radius:5px}.library-directions button.active{background:#e7eef4;color:#214e6b}.reference-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.reference-card{overflow:hidden;background:#fff;border:1px solid #e0e7ed;border-radius:10px;min-width:0;transition:box-shadow .2s,transform .2s}.reference-card:hover{transform:translateY(-3px);box-shadow:0 12px 25px #16344d0b}.reference-cover{display:block;position:relative;width:100%;aspect-ratio:4/3;padding:0;border:0;border-radius:0;background:#e8edf0;overflow:hidden}.reference-cover img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s}.reference-cover:hover img{transform:scale(1.035)}.reference-cover>span{position:absolute;right:12px;bottom:12px;background:#fffE;color:#1c3b50;padding:5px 10px;border-radius:4px;font-size:12px;opacity:0;transition:opacity .2s}.reference-cover:hover>span,.reference-cover:focus-visible>span,.reference-cover.image-unavailable>span{opacity:1}.reference-cover.image-unavailable{background:#eff3f6}.reference-cover.image-unavailable>span{right:50%;bottom:40%;transform:translateX(50%)}.reference-caption{padding:17px 19px 15px}.reference-location{font-size:11px;color:#8796a3;margin-bottom:7px}.reference-caption h2{margin:0 0 4px!important;font-size:16px!important;line-height:24px}.reference-caption h2 button{font-size:inherit;font-weight:500;white-space:normal;text-align:left;background:none;border:0;padding:0;color:#203b50}.reference-studio{font-size:12px!important;color:#8895a0!important;line-height:20px;margin:0!important}.reference-insight{font-size:13px!important;line-height:22px!important;color:#647888!important;margin:13px 0 16px!important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:44px}.reference-bottom{display:flex;justify-content:space-between;gap:10px;border-top:1px solid #edf1f5;padding-top:11px;align-items:center}.reference-bottom>span{display:flex;gap:5px;flex-wrap:wrap}.reference-bottom i{font-style:normal;background:#f0f4f6;color:#688193;font-size:10px;padding:2px 6px;border-radius:3px}.reference-bottom a{font-size:12px;color:#4b718b}.reference-index{margin-top:25px;background:#fff;padding:16px 20px;border:1px solid #e1e8ee;border-radius:8px}.reference-index summary{cursor:pointer;font-size:13px;color:#768a9a}.reference-index>div{display:flex;gap:16px;align-items:center;border-top:1px solid #edf1f5;margin-top:12px;padding-top:12px;font-size:13px}.reference-index b{font-weight:500;flex:1}.reference-index span{color:#8896a2;font-size:12px}.reference-dialog{width:960px;max-width:92vw;padding:25px}.reference-dialog #modal-content>h2{font-size:20px;margin-bottom:18px}.reference-detail>img{width:100%;max-height:65vh;object-fit:contain;display:block;background:#f1f3f4;border-radius:5px}.reference-detail-meta{display:flex;flex-wrap:wrap;gap:6px 18px;align-items:baseline;padding:16px 0;border-bottom:1px solid #e8edf1}.reference-detail-meta b{font-size:15px;font-weight:500}.reference-detail-meta span{font-size:13px;color:#7a8b98}.reference-detail-meta small{flex-basis:100%;font-size:11px;color:#92a0aa}.reference-detail>h3{font-size:15px;margin-top:22px}.reference-detail>p{font-size:14px;line-height:25px}.reference-detail dl{display:grid;grid-template-columns:1fr 1fr;gap:16px 25px;margin:20px 0}.reference-detail dt{font-size:12px;color:#8c9aa5;margin-bottom:5px}.reference-detail dd{margin:0;font-size:13px;line-height:23px;color:#536b7d}.reference-detail .reference-rights{font-size:11px;color:#96a2ac;border-top:1px solid #e8edf1;padding-top:15px}.reference-detail>a{font-size:13px}.reference-dialog .form-actions{margin-top:16px}@media(min-width:1800px){.reference-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:1150px){.reference-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.library-filters{align-items:flex-start;flex-direction:column;gap:10px}}@media(max-width:650px){.reference-grid{grid-template-columns:1fr}.library-toolbar input{width:100%}.reference-detail dl{grid-template-columns:1fr}.reference-index>div{align-items:flex-start;flex-wrap:wrap}}
.project-directory .directory-visual{padding:0;overflow:hidden;display:flex;flex-direction:column;min-width:0}.directory-cover{position:relative;display:block;width:100%;aspect-ratio:16/9;overflow:hidden;border:0;border-radius:0;background:linear-gradient(125deg,#e9f0f5,#f5f7fa);padding:0;text-align:left}.directory-cover>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .25s,transform .35s}.directory-cover.has-image>img{opacity:1}.directory-cover.has-image:hover>img{transform:scale(1.025)}.directory-cover-empty{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#aec0cf;background-image:linear-gradient(#c7d6e130 1px,transparent 1px),linear-gradient(90deg,#c7d6e130 1px,transparent 1px);background-size:32px 32px}.directory-cover-empty svg{width:96px;height:96px;stroke:currentColor;stroke-width:.7;fill:none}.directory-cover-empty b{position:absolute;font-size:22px;font-weight:400;transform:translateY(13px)}.directory-cover.has-image .directory-cover-empty{display:none}.directory-cover-label{position:absolute;bottom:13px;left:16px;background:#ffffffdf;padding:4px 9px;border-radius:4px;font-size:11px;line-height:18px;color:#54718a}.directory-info{padding:20px 22px 17px}.directory-info h2{font-size:17px;line-height:26px;margin:8px 0 9px}.directory-info>.section-kicker{font-size:11px}.directory-info>p{font-size:13px;margin:0 0 20px}.directory-info .directory-bottom{margin-top:0;padding-top:14px}.directory-cover:focus-visible{outline:3px solid #458aca;outline-offset:-3px}@media(min-width:1800px){.project-directory{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:740px){.project-directory{grid-template-columns:1fr}.directory-info{padding:17px 18px}}
