/* Dark SUBARA workspace: retain floating shapes and We plant accents. */
:root{color-scheme:dark;--bg:#1c1f20;--panel:#232729;--line:#383e3f;--text:#ebedee;--muted:#9ea8ad;--lime:#b4bcbf;--surface:#2c3132;--shadow:0 16px 34px -16px #0009,0 4px 12px #0003}
body{background:var(--bg);color:var(--text)}header{background:#202426;border-bottom-color:#343a3b}.brand-logo{filter:invert(1)}.header-actions{color:#9ea8ad}
button{background:#303637;border-color:#424b49;color:#e3e6e8}button:hover{background:#30454e;border-color:#4a6069}
.primary,.primary:hover{background:var(--brand-gradient);color:#17261d;border:0}.text-button{color:#acd49c}.text-button:hover{color:#d5efbe}
select,.extended-stats input[type=number],.light-number-field input{background:#202627;border-color:#374f5a;color:#dadedf}
input,select{accent-color:#adb6ba}.left label,.right label,.extended-stats label{color:#b6bdc0}
aside.left,aside.right{background:#24292b}aside.left{border-right-color:#363e3c}aside.right{border-left-color:#363e3c}
.left section,.right section{border-bottom-color:#2e424a}.left .stats-heading,.right .stats-heading,.stats-subheading,.left .light-control-group h3{color:#ccd1d3}
.section-heading{color:#99a4a9}.section-heading span{background:#2d4149;color:#c1c7ca}.stat-row{border-bottom-color:#ffffff08}.stat-row dt{color:#a7b0b4}.stat-row dd{color:#e3e6e7}
.selection-geometry .stat-row:first-child dd{color:#bec5c8}.left .selection-stats{background:#26373f;border-left-color:#47da93}.selected-part-name{color:#e1e4e5}.stats-caption,.material-name-list{color:#a5aeb2}
.texture-stat{background:#223138;border-color:#324851}.texture-stat-title{color:#d0d5d7}.texture-stat-material{color:#929da2}.light-control-group{border-color:#31464f}.light-number-field input{color:#d4d8da}.light-control-group .toggle{color:#b8c0c3}
.viewer-version{border-top-color:#2e424a;color:#8e9a9f}
.validation-panel>.section-heading{color:#a7b0b4}.validation-row{border-top-color:#31464f}.validation-title{color:#d7dbdc}.validation-detail,#validationSummary{color:#b0b8bb}.hint{border-left-color:#4a5f68;color:#8c989d}
.pass{color:#a3dd8e}.fail{color:#f39e91}.review{color:#dfc478}.check-icon.pass{background:#354c32;color:#b1e39b}.check-icon.fail{background:#603c36;color:#ffc0ad}.check-icon.review{background:#514b31;color:#e9ce84}
.submission-footer{background:#24292b;border-top-color:#30444e}.submission-footer button:disabled{background:#2b3e47;color:#7d8b91;opacity:1;box-shadow:none}
.gallery{background:#202526;border-top-color:#30464f}.gallery-heading{color:#98a3a8}.gallery-heading b{color:#c6ccce;background:#2c4048}
.gallery-track{scrollbar-color:#485c65 transparent}.asset-card{background:#24343b;border-color:#334952;box-shadow:var(--shadow)}.asset-card.active{border-color:#455962;box-shadow:var(--shadow),0 0 0 1px #47da9328}
.asset-card .asset-heading{background:#24343b;border-bottom-color:#30464f}.asset-title{color:#e1e4e5}.asset-card .asset-remove{color:#a3acb0}.asset-card .asset-remove:hover{background:#5b3a32;color:#ffd0bc}
.asset-card .hierarchy,.asset-card .properties{background:#26363d}.parts-heading{color:#b6bec1}.part-row.active{background:#354d57}.part-name,.part-name.active{color:#d9ddde}.part-eye{color:#a0aaae}.part-eye:hover{background:#354d57;color:#d1d5d7}.part-hidden .part-eye{color:#707d83}
.editor-heading>select{background-color:#202e34;border-color:#3e5964;color:#c8ced0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23b3cc9e' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E")}
.properties .icon-button{color:#afb7ba}.editor-heading .icon-button:hover{background:#354d57}.properties .graphic-slot>label,.properties .material-controls label{color:#b8bfc2}.properties .slider-control output{color:#abb3b7}
.properties .color-control input[type=color]{background:#213037;border-color:#546c77}.properties .texture-tile{background:#2b3e46;border-color:#6a777c}.properties .texture-tile:hover{background:#354d57;border-color:#a9b2b5}.texture-tile .tile-empty{color:#99a4a8}.properties .texture-tile.has-texture{border-color:#506770;background:#2b3e46}
.properties .texture-remove{background:#233239;border-color:#506771;color:#bfc5c8;box-shadow:0 2px 5px #0003}.properties .texture-remove:hover{background:#624035;color:#ffceb6}
.gallery-add-fixed{background:#223138;border-color:#57707a;box-shadow:0 5px 18px #0002}.gallery-add-fixed .add-icon{color:#aab3b6}.gallery-add-fixed strong{color:#c0c6c9}.gallery-add-fixed p{color:#95a0a5}.gallery-add-fixed .text-button{color:#a9b2b5}.gallery-track:empty:after{color:#8c989d}
.float-button,.view-controls button{background:#283a41f2;border-color:#495f68;color:#ccd2d4;box-shadow:0 5px 16px #0003}.float-button:hover,.view-controls button:hover{background:#364d57;color:#dee1e3}
.view-controls button.active,.surface-toolbar button[aria-pressed=true],#measureToggle[aria-pressed=true]{background:var(--brand-gradient);color:#1b3724;border-color:transparent}
.surface-toolbar{background:#25353cf2;border-color:#495f68;box-shadow:0 8px 24px #0003}.surface-toolbar button{color:#b3bbbe}.surface-toolbar button:hover{background:#364d57}.surface-divider{background:#4f6670}
.camera-actions #rotate[aria-pressed=true],.camera-actions #rotate[aria-pressed=true]:hover{background:var(--brand-gradient);color:#1b3724;border-color:transparent}
.visualization-menu{color:#c1c7ca}.visualization-menu>.visualization-trigger{background:#25353cf5;border-color:#4c626b;color:#c1c7ca;box-shadow:0 8px 24px #0003}.visualization-menu[open]>.visualization-trigger{border-top-color:#4c626b}.visualization-options{background:#25353cf5;border-color:#4c626b;box-shadow:0 -8px 24px #0002}.visualization-options .toggle{color:#b0b8bc}.visualization-options .range-label{border-top-color:#495e67}.visualization-menu>.visualization-trigger svg{stroke:#afb7ba}
.part-rotation{background:#25353cf2;border-color:#516871;color:#b7bfc2;box-shadow:0 8px 24px #0004}.rotation-axis button{background:#2b3e46;border-color:#4e656f;color:#b3bbbe}.part-rotation #resetPartRotation{color:#b3bbbe}.rotation-reset-group{border-left-color:#516871}
#notice,#loading{background:#24353c;border-color:#506771;color:#ced3d5;box-shadow:0 12px 32px #0005}
#emptyState{background:#24353c;color:#d5dadc;border-color:#76858b;box-shadow:0 18px 64px #0006}#emptyState:hover{background:#2c4049;border-color:#afb7bb}#emptyState>span:not(.empty-icon),#emptyState small{color:#a8b1b5}#emptyState .empty-icon{color:#b0b8bb}

/* About's dark section is #152227. Keep neutral surfaces and reserve colour for accents. */
:root{--bg:#101d23;--panel:#152227;--text:#edf2f3;--muted:#a1afb4;--line:#30444c;--lime:#aed5b3}
body{background:#101d23}header,aside.left,aside.right,.submission-footer{background:#152227}
.gallery{background:#111f26}.asset-card,.asset-card .asset-heading,.asset-card .hierarchy,.asset-card .properties{background:#20323a}
.asset-card{border-color:#33464f}.asset-card.active{border-color:#40594f}.asset-title{color:#edf3f1}
.asset-card .asset-heading{border-bottom-color:#30444b}.parts-heading,.properties .graphic-slot>label,.properties .material-controls label{color:#bccbd0}
.part-name{color:#d5e1e4}.part-eye{color:#a6bac3}.editor-heading>select{background-color:#172a33;border-color:#3d535e;color:#d3e1e6}
.stat-row dt,.validation-detail,#validationSummary{color:#aabdc5}.stat-row dd,.validation-title{color:#e2edf1}
.gallery-add-fixed{background:#1a2e36;border-color:#4c626b}.gallery-add-fixed strong{color:#cfdee2}.gallery-add-fixed p{color:#9fb3bb}
.float-button,.view-controls button{background:#20333bf2;border-color:#415862;color:#d3e2e7}
.surface-toolbar,.visualization-menu>.visualization-trigger,.visualization-options,.part-rotation{background:#20333bf5;border-color:#415862;color:#d3e2e7}
.view-controls button.active,.surface-toolbar button[aria-pressed=true],#measureToggle[aria-pressed=true]{background:var(--brand-gradient);color:#1b3724;border-color:transparent}
/* Solid active states; gradients are reserved for primary actions. */
.view-controls button.active,.surface-toolbar button[aria-pressed=true],#measureToggle[aria-pressed=true],.camera-actions #rotate[aria-pressed=true],.camera-actions #rotate[aria-pressed=true]:hover{
 background:#355745;color:#e3f2df;border:1px solid #7ca98a;box-shadow:inset 0 0 0 1px #b7dfb81c
}
.asset-card.active .asset-heading:before{display:none}
.asset-card.active{border-color:#679078;box-shadow:var(--shadow)}
.asset-card.active .asset-heading{background:#263d3d}
.asset-card.active .asset-title:before{content:'';display:inline-block;width:6px;height:6px;border-radius:50%;background:#a6d3ac;margin-right:8px;vertical-align:middle}
/* Compact cards with room for both maps and the material controls. */
.workspace{grid-template-rows:minmax(220px,1fr) 310px}
.asset-card.active,.asset-card{grid-template-rows:38px minmax(0,1fr)}
.asset-card .asset-heading{padding-block:5px}.gallery-track{padding-top:10px;padding-bottom:18px}
.gallery-add-fixed{margin-block:10px 18px;padding:10px 11px;gap:6px}
.gallery-add-fixed p{display:none}.gallery-add-fixed .add-icon{font-size:24px;line-height:1}
.gallery-add-fixed strong{margin:0;line-height:1.3}.gallery-add-fixed button{padding:6px 5px;margin:0}
.gallery-add-fixed .text-button{font-size:12px;padding:3px 4px}

/* One permanent drop target, with the example action outside its boundary. */
.gallery-add-column{flex:0 0 155px;display:flex;flex-direction:column;min-height:0;gap:8px;padding-block:10px 18px}
.gallery-add-column .gallery-add-fixed{flex:1 1 auto;min-height:0;margin:0;padding:16px 12px;gap:10px}
.gallery-add-column .gallery-add-fixed strong{font-size:15px;line-height:1.4}
.gallery-add-column .gallery-add-fixed p{display:block;margin:0;font-size:14px;line-height:1.45;color:#9fb3bb}
.gallery-example{flex:none;padding:6px 4px;font-size:14px;border:0;background:transparent;border-radius:10px;color:#aebfc4}
.gallery-example:hover{background:#20333b;color:#e1ecee}
@media(max-width:1100px){.gallery-add-column{flex-basis:125px}.gallery-add-column .gallery-add-fixed{padding-inline:10px}}
@media(max-width:520px){.gallery-add-column{flex-basis:120px}}
/* Restore the pre-branding appearance of the camera-view panel. */
.view-controls button{padding:8px 10px;font-size:14px;font-weight:400;min-width:64px;border:1px solid transparent;border-radius:7px;color:#4c5c52;background:#ffffffb0;box-shadow:none}
.view-controls button:hover{background:#ffffffdf;color:#35473c}
.view-controls button.active,.view-controls button.active:hover{background:#303d34;color:#ddeddd;border-color:transparent;box-shadow:none}
