/* Visual-first result workspace; the existing creator and local library are retained. */
.result-view { padding: 22px clamp(18px,3.4vw,50px) 70px; }
.result-topbar,.result-hero,.result-tabs,.result-content { max-width: 1352px; }
.result-topbar { margin: 0 auto; }
.download-ready { max-width:1352px; margin:12px auto 0; font-size:12px; color:#777269; }
.download-ready .button { display:inline-flex; align-items:center; margin-left:12px; text-decoration:none; }
.result-hero { display:block; margin:22px auto 0; position:relative; border:0; border-radius:0; background:none; }
.result-reference { display:none; }
.result-intro { padding:0 140px 0 0; }
.result-intro h2 { font-size:34px; letter-spacing:-.035em; }
.result-intro .eyebrow { font-size:9px; margin-bottom:8px; }
.result-intro > p:not(.eyebrow) { margin:9px 0 0; max-width:920px; font-size:12px; }
.large-palette { display:none; }
.favorite-toggle { position:absolute; right:0; bottom:0; min-height:44px; font-size:11px; }
.result-tabs { margin-top:22px; gap:30px; }
.result-tabs button { font-size:12px; }
.result-content { margin-top:28px; scroll-margin-top:88px; }
.button { min-height:44px; }
.back-button,.wordmark { min-height:44px; }
.art-kit-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:30px 34px; }
.art-kit-card { min-width:0; }
.analysis-connection { display:flex; flex-wrap:wrap; gap:8px 20px; justify-content:space-between; padding:12px 16px; margin:0 0 24px; border:1px solid var(--line); border-radius:10px; font-size:12px; color:#57574d; background:#f3f1e9; }
.analysis-connection small { font-size:11px; color:#777269; }
.analysis-reasons { padding-left:18px; font-size:12px; line-height:1.65; color:#777269; }
.analysis-reasons li { margin-bottom:10px; }
.device-analysis summary { cursor:pointer; min-height:44px; padding:12px 0; font-size:12px; }
.kit-card-heading { display:flex; align-items:center; justify-content:space-between; gap:16px; min-height:61px; padding:0 2px 15px; }
.kit-card-heading h3,.asset-heading h3 { margin:0 0 6px; font-size:24px; letter-spacing:-.02em; }
.kit-card-heading p,.asset-heading p { margin:0; color:#777269; font-size:12px; line-height:1.5; }
.scene-frame { position:relative; aspect-ratio:16/9; overflow:hidden; border-radius:14px; background:#e2decf; border:1px solid #dedbd3; }
.scene-frame>.kit-scene { display:block; width:100%; height:100%; }
.scene-open { position:absolute; bottom:14px; right:14px; min-height:44px; padding:10px 14px; display:flex; gap:20px; align-items:center; border:1px solid #ffffff7a; border-radius:9px; color:#fffdf4; background:#1e2318d9; font-size:11px; cursor:pointer; backdrop-filter:blur(8px); }
.scene-open span { font-size:17px; }
.scene-badge { position:absolute; top:14px; right:14px; padding:7px 10px; border:1px solid #ffffff5e; border-radius:6px; background:#ffffefc4; color:#33392b; font-size:10px; pointer-events:none; }
.media-caption { margin:9px 2px 0; color:#898279; font-size:10px; }
.world-stage { position:absolute; inset:0; }
.world-canvas { width:100%; height:100%; display:block; touch-action:none; cursor:grab; }
.world-canvas:active { cursor:grabbing; }
.world-loading,.world-error { height:100%; display:grid; place-content:center; padding:35px; text-align:center; font-size:13px; color:#666154; }
.text-button { border:0; background:none; font-size:10px; color:#777269; cursor:pointer; min-height:44px; flex:0 0 auto; padding:4px; }
.visual-brief { display:grid; grid-template-columns:.95fr 1.15fr; min-height:320px; height:320px; border:1px solid var(--line); border-radius:14px; overflow:hidden; background:#fffdf887; }
.brief-reference { display:block; width:100%; height:100%; min-height:0; object-fit:contain; background:#e7e1d5; }
.brief-details { min-width:0; padding:16px 18px; overflow:auto; }
.brief-palette { display:flex; gap:6px; margin-bottom:19px; }
.brief-palette i { min-width:0; flex:1; aspect-ratio:.9; max-height:46px; border-radius:5px; box-shadow:inset 0 0 0 1px #0000000d; }
.brief-details dl { margin:0; }
.brief-details dl>div { margin-bottom:15px; }
.brief-details dt { margin:0 0 5px; font-size:9px; font-weight:700; color:#817a6f; text-transform:uppercase; letter-spacing:.1em; }
.brief-details dd { margin:0; color:#605b53; font-size:11px; line-height:1.5; overflow-wrap:anywhere; }
.brief-details dd.unreviewed { color:#9c958a; }
.provenance-tag { font-size:9px; color:#7f786d; }
.comparison-card { min-height:320px; height:320px; padding:22px 13px 12px; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; border:1px solid var(--line); border-radius:14px; background:#fffdf887; }
.comparison-card>div { display:flex; min-width:0; flex-direction:column; gap:12px; }
.comparison-card>div>span { color:#837c71; font-size:9px; font-weight:700; text-transform:uppercase; letter-spacing:.08em; }
.comparison-image { flex:1; overflow:hidden; min-height:0; border-radius:9px; background:#e2decf; }
.comparison-image svg,.comparison-image img { display:block; width:100%; height:100%; object-fit:cover; }
.comparison-image svg { width:160%; max-width:none; margin-left:-30%; }
.comparison-image p { font-size:11px; color:#7e796d; padding:18px; }
.comparison-card>p { grid-column:1/-1; margin:0; font-size:9px; line-height:1.5; color:#999084; }
.kit-controls,.art-direction-details { margin-top:30px; padding:0 22px 20px; background:#fffdf882; border:1px solid var(--line); border-radius:13px; }
.kit-controls:not([open]),.art-direction-details:not([open]) { padding-bottom:0; }
.kit-controls>summary,.art-direction-details>summary { min-height:66px; padding:21px 0; font-size:13px; font-weight:650; cursor:pointer; }
.kit-controls>summary>span,.art-direction-details>summary>span { margin-left:16px; color:#8e877b; font-size:11px; font-weight:400; }
.role-controls { display:grid; grid-template-columns:repeat(auto-fit,minmax(122px,1fr)); gap:14px; }
.role-controls label { display:flex; align-items:center; gap:9px; min-width:0; font-size:10px; }
.role-controls input { width:44px; height:44px; padding:2px; flex:0 0 auto; border:1px solid var(--line); border-radius:7px; background:none; cursor:pointer; }
.role-controls small { display:block; margin-top:5px; font-size:9px; color:#8f877c; }
.recipe-controls { margin-top:24px; display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:24px; align-items:center; }
.recipe-controls>label { font-size:11px; display:flex; flex-direction:column; gap:8px; }
.recipe-controls select,.world-toolbar select { height:44px; width:100%; padding:8px; background:#fffdf8; border:1px solid #d8d3c9; border-radius:7px; color:#403d36; font-size:12px; }
.recipe-controls input[type=range] { width:100%; height:44px; accent-color:#5f6647; }
.recipe-controls .check-setting { flex-direction:row; align-items:center; }
.recipe-controls output { color:#8c8478; font-size:10px; }
.optical-controls { margin:24px 0 0; padding:16px; border:1px solid #d8d3c9; border-radius:12px; }
.optical-controls legend { font-size:13px; padding:0 8px; }
.optical-controls p { margin:0; font-size:11px; line-height:1.65; color:#777269; }
.optical-controls .recipe-controls { grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; margin-top:16px; }
@media(max-width:560px){.optical-controls .recipe-controls{grid-template-columns:1fr}}
.kit-controls [data-reset-recipe] { margin-top:20px; }
.check-setting input { width:20px; height:20px; accent-color:#5f6647; }
.kit-save-status { font-size:10px; color:#8c8478; margin:17px 0 0; }
.art-direction-details { scroll-margin-top:90px; }
.art-direction-details .analysis-layout { margin-top:5px; }
.art-direction-details .description-panel,.art-direction-details .signal-panel { background:transparent; border:0; padding:15px 0; }
.art-direction-details .description-panel { padding-right:20px; }
.wide-scene { max-height:560px; aspect-ratio:2.15; }
.play-toolbar,.world-toolbar { display:flex; align-items:center; flex-wrap:wrap; gap:16px; margin:14px 0 24px; }
.play-toolbar p { flex:1; font-size:12px; line-height:1.5; color:#7a7367; }
.movement-buttons { display:flex; gap:6px; }
.movement-buttons button { min-width:48px; font-size:19px; touch-action:none; }
.asset-heading { margin-top:28px; }
.asset-family { margin-top:18px; display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:14px; }
.asset-family button { min-width:0; background:#fffdf8; border:1px solid var(--line); border-radius:12px; overflow:hidden; padding:0; cursor:pointer; }
.asset-family button>div { aspect-ratio:1.25; padding:16px; background:repeating-conic-gradient(#efebe2 0% 25%,#f6f3ec 0% 50%) 0 0 / 16px 16px; }
.asset-family svg { width:100%; height:100%; display:block; }
.asset-family button>span { min-height:44px; padding:13px; display:flex; justify-content:space-between; text-transform:capitalize; gap:5px; font-size:11px; }
.asset-family i { font-size:9px; color:#9b9386; font-style:normal; }
.kit-notes { display:grid; grid-template-columns:1fr 1fr; gap:26px; margin-top:23px; }
.kit-notes h4 { font-size:13px; font-weight:600; margin:0 0 8px; }
.kit-notes p { font-size:12px; line-height:1.7; color:#7e7669; margin:0; }
.world-toolbar>div { display:flex; gap:8px; }
.world-toolbar>label { display:flex; align-items:center; gap:8px; margin-left:auto; font-size:12px; }
.world-toolbar select { width:170px; }
.world-metrics { margin:0 0 20px; font:10px/1.5 ui-monospace,monospace; color:#8b8479; }
.material-family { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.material-family article { padding:16px; border:1px solid var(--line); border-radius:12px; display:flex; gap:15px; align-items:center; background:#fffdf8; }
.material-family article>i { width:53px; height:53px; flex:0 0 auto; border-radius:50%; background:radial-gradient(circle at 33% 28%,#ffffff94,transparent 46%),var(--material); box-shadow:inset -8px -9px 12px #0004,0 5px 8px #0001; }
.material-family h4 { text-transform:capitalize; font:500 18px Georgia,serif; margin:0 0 6px; }
.material-family p { font-size:10px; line-height:1.7; margin:0; color:#8b8276; }
.agent-kit-heading h3 { font-size:28px; margin:0 0 8px; }
.agent-kit-heading p { font-size:13px; color:#7a7266; }
.agent-layout { margin-top:25px; }
.agent-layout pre { font-size:11px; }
.agent-layout .button { margin-top:12px; margin-right:8px; }
@media(max-width:760px){.kit-workspace>.wide-scene:not([data-play-scene]){aspect-ratio:1}}
@media(max-width:1050px){.role-controls{grid-template-columns:repeat(4,1fr)}.recipe-controls{grid-template-columns:repeat(3,1fr)}.material-family{grid-template-columns:repeat(2,1fr)}.brief-details{padding:12px}.brief-details dd{font-size:10px}.kit-card-heading{align-items:flex-start}.kit-card-heading .text-button{display:none}}
@media(max-width:760px){.result-view{padding:18px 16px 90px}.result-intro{padding:0}.result-intro h2{font-size:31px}.result-intro>p:not(.eyebrow){font-size:11px}.favorite-toggle{position:static;margin:4px 0 0;align-self:flex-start}.result-tabs{margin-top:6px;gap:21px}.result-tabs button{font-size:11px}.art-kit-grid{grid-template-columns:1fr;gap:25px}.kit-card-heading h3{font-size:24px}.kit-card-heading p{font-size:12px}.kit-card-heading{min-height:66px}.scene-open{bottom:10px;right:10px;font-size:10px;padding:8px 10px}.scene-badge{top:9px;right:9px;font-size:9px}.visual-brief{height:310px;grid-template-columns:.85fr 1.15fr}.brief-details dd{font-size:11px}.comparison-card{height:320px;min-height:0;gap:8px;padding:20px 10px 13px}.comparison-card>div>span{font-size:8px;letter-spacing:.05em}.kit-controls,.art-direction-details{padding-left:15px;padding-right:15px}.kit-controls>summary>span,.art-direction-details>summary>span{display:block;margin:7px 0 0;font-size:10px}.role-controls{grid-template-columns:repeat(2,1fr);gap:14px}.recipe-controls{grid-template-columns:repeat(2,1fr);gap:15px}.art-direction-details .description-panel{padding-right:0}.wide-scene{aspect-ratio:16/10}.play-toolbar{gap:9px}.play-toolbar p{flex-basis:65%;font-size:11px;order:3;margin:0}.play-toolbar>button{margin-left:auto}.asset-family{grid-template-columns:repeat(3,1fr);gap:9px}.asset-family button>span{font-size:10px;padding:10px 8px}.asset-family button>div{padding:10px}.kit-notes{grid-template-columns:1fr;gap:18px}.world-toolbar{gap:10px}.world-toolbar>div{gap:6px;width:100%}.world-toolbar>div>button{flex:1;padding:8px;font-size:10px}.world-toolbar>label{margin-left:0}.material-family article{padding:12px;gap:10px}.material-family article>i{width:34px;height:34px}.material-family h4{font-size:17px}.material-family p{font-size:9px}.agent-layout pre{font-size:10px}.world-canvas{touch-action:pan-y}}
