/*
 * WolfStorm — Wolf Territories Grid Web Viewer
 * Copyright (C) 2026 Wolf Territories Grid / IntelligentWolf Ltd.
 * All rights reserved.
 *
 * An original work. Interoperates with OpenSimulator grids by implementing the
 * publicly documented LLUDP and HTTP capability protocols; protocol
 * interoperability does not imply shared authorship or a shared code base.
 *
 * Unauthorised copying, redistribution or modification of this file, in whole or
 * in part, is prohibited without the written permission of IntelligentWolf Ltd.
 * See COPYRIGHT in the project root. https://wolfterritories.org
 */
#floater-build_tools{min-width:295px}.build-toolbar{display:flex;gap:10px;padding:5px 10px 4px;background:linear-gradient(135deg, #0a3d62 0, #0c5a8a 100%);border-bottom:1px solid #3498db}.build-tool-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;padding:0;background:linear-gradient(180deg, rgba(41,128,185,0.25) 0, rgba(26,82,118,0.25) 100%);border:1px solid rgba(52,152,219,0.35);border-radius:4px;color:rgba(220,235,250,0.75);cursor:pointer;transition:all 0.15s ease;flex:0 0 35px;width:35px;height:25px}.build-tool-btn .tool-caption{display:none}.build-tool-btn:hover{background:linear-gradient(180deg, #3498db 0, #2980b9 100%);border-color:#5dade2;color:#fff;transform:translateY(-1px)}.build-tool-btn.active{background:linear-gradient(180deg, #2980b9 0, #1a5276 100%);border-color:#5dade2;color:#fff;box-shadow:0 0 12px rgba(52,152,219,0.5),inset 0 1px 0 rgba(255,255,255,0.15)}.build-tool-btn .material-icons{font-size:18px;line-height:1}.build-status-text{font-size:10px;line-height:13px;color:rgba(200,210,230,0.55);padding:3px 8px 2px}.build-tool-panel{padding:4px 8px;background:rgba(10,45,70,0.55);border-bottom:1px solid rgba(52,152,219,0.25);min-height:22px;font-size:11px;color:rgba(220,235,250,0.7)}.build-tool-panel .tool-mode-group{display:flex;gap:4px}.build-tool-panel .tool-mode-btn{padding:2px 10px;background:linear-gradient(180deg, rgba(41,128,185,0.2) 0, rgba(26,82,118,0.2) 100%);border:1px solid rgba(52,152,219,0.3);border-radius:4px;color:rgba(220,235,250,0.75);cursor:pointer;font-size:11px;transition:all 0.12s ease}.build-tool-panel .tool-mode-btn:hover{background:linear-gradient(180deg, #3498db 0, #2980b9 100%);color:#fff}.build-tool-panel .tool-mode-btn.active{background:linear-gradient(180deg, #2980b9 0, #1a5276 100%);border-color:#5dade2;color:#fff;box-shadow:0 0 8px rgba(52,152,219,0.4)}#floater-build_tools .llfloater-tabs{background:rgba(10,45,70,0.6);padding:0;gap:0;border-bottom:1px solid #3498db}#floater-build_tools .llfloater-tab{padding:0;height:20px;line-height:19px;min-width:40px;max-width:100px;flex:1;text-align:center;font-size:10px;font-weight:600;letter-spacing:0.2px;border-radius:0;border-bottom:2px solid transparent;color:rgba(200,220,240,0.55);transition:all 0.15s ease}#floater-build_tools .llfloater-tab:hover{background:rgba(52,152,219,0.12);color:rgba(220,235,250,0.9)}#floater-build_tools .llfloater-tab.active{background:linear-gradient(180deg, rgba(52,152,219,0.18) 0, rgba(52,152,219,0.05) 100%);color:#fff;border-bottom:2px solid #3498db}#floater-build_tools .llfloater-tab-content{padding:5px 8px 8px;background:linear-gradient(135deg, rgba(10,45,70,0.35) 0, rgba(12,90,138,0.25) 100%);font-size:11px}.build-section{margin-bottom:7px}.build-section-header{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:0.6px;color:#5dade2;margin-bottom:3px;padding-bottom:2px;border-bottom:1px solid rgba(52,152,219,0.25)}.build-transform-row{display:flex;align-items:center;gap:4px;margin-bottom:4px}.build-transform-row .transform-label{width:36px;font-size:10px;font-weight:500;color:rgba(200,220,240,0.65);flex-shrink:0}.build-transform-row .transform-fields{display:flex;gap:4px;flex:1;min-width:0}.build-transform-row .transform-field{flex:1 1 0;max-width:68px;min-width:0;position:relative}.build-transform-row .transform-field .axis-label{position:absolute;left:4px;top:50%;transform:translateY(-50%);font-size:10px;font-weight:700;pointer-events:none;z-index:1}.build-transform-row .transform-field .axis-label.x{color:#ff6b6b}.build-transform-row .transform-field .axis-label.y{color:#51cf66}.build-transform-row .transform-field .axis-label.z{color:#4dabf7}.build-transform-row .transform-field input{width:100%;height:19px;padding:0 4px 0 14px;font-size:11px;background:rgba(0,0,0,0.4);border:1px solid rgba(52,152,219,0.25);border-radius:4px;color:#eaf4fc;font-family:'Consolas','Courier New',monospace;box-sizing:border-box;transition:all 0.12s ease}.build-transform-row .transform-field input:focus{border-color:#3498db;outline:none;background:rgba(0,0,0,0.55);box-shadow:0 0 8px rgba(52,152,219,0.35)}.build-transform-row .transform-actions{display:flex;gap:3px;flex-shrink:0}.build-cp-btn{width:18px;height:18px;display:flex;align-items:center;justify-content:center;background:linear-gradient(180deg, rgba(41,128,185,0.25) 0, rgba(26,82,118,0.25) 100%);border:1px solid rgba(52,152,219,0.3);border-radius:4px;color:rgba(200,220,240,0.6);cursor:pointer;font-size:10px;transition:all 0.12s ease}.build-cp-btn:hover:not(:disabled){background:linear-gradient(180deg, #3498db 0, #2980b9 100%);border-color:#5dade2;color:#fff}.build-cp-btn:disabled{opacity:0.5;cursor:not-allowed}.build-param-row{display:flex;gap:10px;margin-bottom:3px;align-items:center;min-height:19px}.build-param-row .param-group{flex:1 1 0;min-width:0;display:grid;grid-template-columns:minmax(0, auto) minmax(56px, 1fr);align-items:center;column-gap:5px}.build-param-row .param-group label{display:block;font-size:10px;color:rgba(200,220,240,0.6);margin:0;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#build-tab-content[data-tab="general"] .build-param-row .param-group{grid-template-columns:90px minmax(0, 1fr)}.build-param-row .param-group input,.build-param-row .param-group select{width:100%;height:19px;padding:0 4px;font-size:11px;background:rgba(0,0,0,0.4);border:1px solid rgba(52,152,219,0.25);border-radius:3px;color:#eaf4fc;box-sizing:border-box;transition:all 0.12s ease}.build-param-row .param-group input[type="number"]{max-width:68px}.build-param-row .param-group > input:only-child,.build-param-row .param-group > select:only-child{grid-column:1/-1}.build-param-row .param-group input:focus,.build-param-row .param-group select:focus{border-color:#3498db;outline:none;box-shadow:0 0 8px rgba(52,152,219,0.35)}.build-flags{display:flex;flex-wrap:wrap;gap:0 10px;margin-bottom:5px}.build-flag,.build-flags .build-flag{display:flex;align-items:center;gap:4px;height:19px;font-size:11px;color:rgba(220,235,250,0.85);cursor:pointer;white-space:nowrap}.build-flag input,.build-flags .build-flag input{cursor:pointer;accent-color:#3498db;width:13px;height:13px;margin:0;flex-shrink:0}.build-info-bar{padding:5px 8px;background:rgba(0,0,0,0.25);border-top:1px solid rgba(52,152,219,0.2);font-size:10px;color:rgba(200,220,240,0.45);text-align:center}.build-action-bar{display:flex;gap:6px;padding:8px 10px;background:linear-gradient(135deg, #0a3d62 0, #0c5a8a 100%);border-top:1px solid #3498db}#floater-build_tools .ll-button,#floater-build_tools .ll-button-small,.build-action-bar button{flex:0 0 auto;height:20px;padding:0 10px;font-size:11px;font-weight:600;background:linear-gradient(180deg, #2980b9 0, #1a5276 100%);border:1px solid #3498db;border-radius:4px;color:#fff;cursor:pointer;transition:all 0.15s ease}#floater-build_tools .ll-button-small:hover,#floater-build_tools .ll-button:hover,.build-action-bar button:hover{background:linear-gradient(180deg, #3498db 0, #2980b9 100%);border-color:#5dade2;transform:translateY(-1px)}#floater-build_tools .ll-button:active,.build-action-bar button:active{transform:translateY(0);background:#1a5276}#floater-build_tools .build-action-bar button{flex:1 1 0}#floater-build_tools .build-cp-btn{flex:0 0 auto;padding:0}.build-contents-list{list-style:none;margin:0;padding:0;background:rgba(0,0,0,0.35);border:1px solid rgba(52,152,219,0.25);border-radius:4px;min-height:120px;max-height:250px;overflow-y:auto}.build-contents-list li{display:flex;align-items:center;gap:6px;padding:5px 8px;font-size:11px;color:rgba(220,235,250,0.85);cursor:pointer;border-bottom:1px solid rgba(255,255,255,0.04)}.build-contents-list li:hover{background:rgba(52,152,219,0.14)}.build-contents-list li:focus-visible{outline:2px solid #5dade2;outline-offset:-2px}.build-contents-list li.selected{background:linear-gradient(180deg, #2980b9 0, #1a5276 100%);color:#fff}.build-contents-list li .material-icons{font-size:16px;opacity:0.7}.build-contents-list .empty-msg{text-align:center;color:rgba(200,220,240,0.35);padding:30px 10px;font-style:italic}.build-create-grid{display:grid;grid-template-columns:repeat(4, 1fr);gap:5px}.build-create-btn{display:flex;flex-direction:column;align-items:center;gap:3px;padding:8px 4px;background:linear-gradient(180deg, rgba(41,128,185,0.22) 0, rgba(26,82,118,0.22) 100%);border:1px solid rgba(52,152,219,0.3);border-radius:6px;color:rgba(220,235,250,0.8);cursor:pointer;font-size:9px;transition:all 0.12s ease}.build-create-btn:hover{background:linear-gradient(180deg, #3498db 0, #2980b9 100%);border-color:#5dade2;color:#fff;transform:translateY(-1px)}.build-create-btn.active{background:linear-gradient(180deg, #2980b9 0, #1a5276 100%);border-color:#5dade2;color:#fff;box-shadow:0 0 12px rgba(52,152,219,0.5)}.build-create-btn .material-icons{font-size:22px}.build-perms-section{margin-top:6px;padding-top:6px;border-top:1px solid rgba(52,152,219,0.2)}.build-perms-label{font-size:10px;font-weight:600;color:rgba(200,220,240,0.6);margin:0;display:inline-block;width:68px;vertical-align:middle;line-height:19px}.build-perms-row{display:inline-flex;gap:8px;vertical-align:middle;flex-wrap:wrap;margin:0}#general-perm-modify{display:block;width:auto;line-height:14px;margin-bottom:3px}#floater-build_tools input[type="range"]{-webkit-appearance:none;width:100%;height:4px;background:rgba(52,152,219,0.2);border-radius:2px;outline:none;margin:5px 0}#floater-build_tools input[type="range"]::-webkit-slider-thumb{-webkit-appearance:none;width:14px;height:14px;background:#3498db;border-radius:50%;cursor:pointer;border:2px solid rgba(255,255,255,0.4);box-shadow:0 0 6px rgba(52,152,219,0.5)}#floater-build_tools input[type="range"]::-webkit-slider-thumb:hover{background:#5dade2}#floater-build_tools input[type="color"]{-webkit-appearance:none;border:1px solid rgba(52,152,219,0.35);border-radius:4px;padding:0;cursor:pointer}.build-info-field{display:grid;grid-template-columns:75px minmax(0, 1fr);align-items:center;column-gap:5px;font-size:11px;line-height:16px;color:rgba(200,220,240,0.55);padding:1px 0}.build-info-field .info-value{color:rgba(220,235,250,0.85);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ll-button-small.pending,.ll-button.pending{border-color:rgba(243, 156, 18, 0.9);box-shadow:0 0 0 1px rgba(243, 156, 18, 0.55) inset;animation:build-pending-flash 1.2s ease-in-out infinite}@keyframes build-pending-flash{0%,100%{background-color:rgba(243, 156, 18, 0.18)}50%{background-color:rgba(243, 156, 18, 0.38)}}@media (prefers-reduced-motion: reduce){.ll-button-small.pending,.ll-button.pending{animation:none;background-color:rgba(243, 156, 18, 0.28)}}.paint-tab .paint-intro{color:rgba(220,235,250,0.8);line-height:1.35}.paint-tab .paint-rights{display:flex;align-items:center;gap:5px;color:#e2c46a}.paint-tab .paint-rights .material-icons{font-size:14px}.paint-palette{display:flex;flex-direction:column;gap:3px}.paint-slot{display:grid;grid-template-columns:14px 34px 1fr auto auto 18px;align-items:center;gap:6px;padding:3px 4px;border-radius:4px;border:1px solid rgba(52,152,219,0.18);background:rgba(255,255,255,0.03)}.paint-slot.active{border-color:#5dade2;background:rgba(52,152,219,0.16)}.paint-slot input[type=radio]{margin:0}.paint-swatch{width:34px;height:34px;border-radius:3px;border:1px solid rgba(255,255,255,0.18);background:#000 center/cover no-repeat;color:#9fc5e8;font-size:18px;line-height:1;cursor:pointer;padding:0}.paint-swatch.empty{background:rgba(255,255,255,0.05)}.paint-swatch.water{display:inline-block;background:linear-gradient(160deg, #6fc3ff 0, #1f6fb5 55%, #0b3a6b 100%);border-color:rgba(140,200,255,0.5);cursor:default}.paint-swatch:focus-visible{outline:2px solid #5dade2;outline-offset:1px}.paint-slot-label{display:flex;flex-direction:column;font-weight:600;cursor:pointer}.paint-slot-used{font-weight:400;font-size:10px;color:rgba(200,220,240,0.6)}.paint-scale-label{display:flex;align-items:center;gap:3px;font-size:10px;color:rgba(200,220,240,0.75);white-space:nowrap}.paint-scale{width:44px;font-size:10px;padding:1px 3px}.paint-mode{font-size:10px;padding:1px 2px;max-width:92px;background:rgba(0,0,0,0.3);color:#d8dee9;border:1px solid rgba(255,255,255,0.15);border-radius:3px}.paint-slot.paint-water{grid-template-columns:14px 34px 1fr auto auto 0}.paint-slot-clear{width:18px;height:18px;padding:0;border-radius:3px;border:1px solid rgba(255,255,255,0.15);background:transparent;color:rgba(220,235,250,0.7);cursor:pointer;font-size:13px;line-height:1}.paint-slot-clear:disabled{opacity:0.3;cursor:default}.paint-brush{display:grid;grid-template-columns:1fr auto;gap:4px 8px;align-items:center}.paint-brush label{font-size:10.5px;color:rgba(200,220,240,0.75)}.paint-brush input[type=range]{width:130px}.paint-brush .paint-erase{grid-column:1/-1}.paint-arm-row{display:flex;align-items:center;gap:8px;margin:4px 0}.paint-count{font-size:10.5px;color:rgba(200,220,240,0.7)}.paint-status{min-height:15px;margin:3px 0 5px;font-size:10.5px;color:#c0c8d8}.paint-status.err{color:#ff9a9a}.paint-actions{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}