/* Version 19: guided categories, draft cart, video input, measurements and figure poses. */
.mode-switch{grid-template-columns:repeat(3,1fr)!important}.video-mode-button span{font-size:15px;margin-right:4px}
.active-category{display:flex;align-items:center;gap:10px;margin:12px 0 0;padding:9px 11px;border:1px solid #17405b;border-radius:9px;background:#071725}.active-category>span{width:30px;height:30px;display:grid;place-items:center;border-radius:7px;background:#0d3550;color:#6bd5ff;font-size:16px}.active-category div{display:flex;flex-direction:column}.active-category small{font-size:8px;letter-spacing:.14em;color:#57768c}.active-category strong{font-size:12px;margin-top:2px}
.video-reference-box{position:relative;height:112px;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;border:1px dashed #286183;border-radius:10px;background:radial-gradient(circle at 50% 40%,#103a55,#071724 72%);text-align:center}.video-reference-box video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .25s}.video-reference-box.previewing video{opacity:.58}.video-reference-box>*:not(video){position:relative;z-index:1}.video-camera{font-size:27px;color:#63d4ff}.video-reference-box strong{margin-top:8px;font-size:11px;text-shadow:0 1px 6px #00121f}.video-reference-box small{margin-top:4px;font-size:8px;color:#8eb8cd;text-shadow:0 1px 5px #00121f}.video-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:8px}.video-actions button{height:38px;border:1px solid #245471;border-radius:8px;background:#0a2133;color:#a8d8ee;font-size:10px;cursor:pointer}.video-actions button i{display:inline-block;width:8px;height:8px;margin-right:5px;border-radius:50%;background:#ef4963}.video-actions button.recording{border-color:#ef4963;color:#fff}.video-actions button.recording i{animation:recordPulse 1s infinite}@keyframes recordPulse{50%{opacity:.25}}
.category-option-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px}.category-option-grid button{min-height:42px;padding:7px 8px;border:1px solid #173b54;border-radius:7px;background:#081a29;color:#8baabd;text-align:left;font-size:10px;cursor:pointer}.category-option-grid button:before{content:'○';margin-right:6px;color:#4b7894}.category-option-grid button.active{border-color:#34aee6;background:#0c3148;color:#dff7ff}.category-option-grid button.active:before{content:'●';color:#62d6ff}
.category-trigger{position:absolute;z-index:13;left:22px;top:68px;height:36px;padding:0 14px;border:1px solid rgba(37,99,134,.72);border-radius:8px;background:#092236;color:#b8e4f8;font-weight:700;font-size:11px;cursor:pointer;box-shadow:0 8px 20px rgba(2,34,57,.2)}.category-trigger span{margin-right:6px;color:#5ed2ff}.category-trigger:hover{border-color:#3eb8ed;background:#0d2e46}
.category-dialog{position:fixed;z-index:160;inset:0;display:grid;place-items:center;padding:24px;background:rgba(1,8,15,.78);backdrop-filter:blur(17px);transition:opacity .3s}.category-dialog.hidden{display:none!important}.category-dialog-card{position:relative;width:min(900px,92vw);max-height:90vh;overflow:auto;padding:28px;border:1px solid #2c769d;border-radius:18px;background:linear-gradient(145deg,rgba(9,32,49,.985),rgba(4,18,30,.99));box-shadow:0 35px 100px rgba(0,0,0,.6)}.category-dialog-card>small{font-size:10px;letter-spacing:.18em;color:#55c9fa}.category-dialog h1{margin:7px 0 6px;font-size:29px}.category-dialog p{margin:0 0 20px;color:#7794a9;font-size:13px}.category-close{position:absolute;right:17px;top:16px;width:34px;height:34px;border:0;border-radius:50%;background:#102d43;color:#cceeff;font-size:20px;cursor:pointer}.category-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:11px}.category-grid button{overflow:hidden;padding:0 0 11px;border:1px solid #194663;border-radius:11px;background:#081b2a;color:#a8c3d3;cursor:pointer;transition:transform .2s,border-color .2s,box-shadow .2s}.category-grid button:hover,.category-grid button.active{transform:translateY(-3px);border-color:#43c0f4;box-shadow:0 10px 24px rgba(3,104,159,.23);color:#eefaff}.category-grid i{display:block;width:100%;aspect-ratio:1.33;background-image:url('assets/category-sprite-v19.png');background-size:400% 300%;background-position:calc(var(--sprite-x)*-100%/3) calc(var(--sprite-y)*-100%/2);background-repeat:no-repeat}.category-grid b{display:block;margin-top:10px;font-size:12px}
.cart-button{position:relative;width:41px!important;height:39px!important;padding:0!important;border:1px solid #245a79!important;border-radius:9px!important;background:#0a2538!important;color:#bceaff!important;cursor:pointer}.cart-button>span{font-size:18px}.cart-button b{position:absolute;right:-5px;top:-6px;min-width:18px;height:18px;padding:0 4px;display:grid;place-items:center;border-radius:10px;background:#1ea9e8;color:#fff;font-size:9px;box-shadow:0 3px 9px rgba(0,121,184,.4)}
.cart-drawer{position:fixed;z-index:120;right:0;top:90px;bottom:0;width:min(390px,94vw);padding:24px;background:rgba(5,20,33,.985);border-left:1px solid #24516d;box-shadow:-24px 20px 60px rgba(0,0,0,.42);transform:translateX(104%);transition:transform .38s cubic-bezier(.2,.75,.2,1)}.cart-drawer.open{transform:none}.cart-head{display:flex;align-items:flex-start;justify-content:space-between}.cart-head small{color:#55c9fa;font-size:9px;letter-spacing:.16em}.cart-head h2{margin:5px 0 18px;font-size:24px}.cart-head button{width:32px;height:32px;border:0;border-radius:50%;background:#102d42;color:#bedbea;font-size:20px;cursor:pointer}.cart-list{display:grid;gap:9px}.cart-empty{min-height:190px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px;border:1px dashed #214b64;border-radius:12px;color:#66849a;text-align:center}.cart-empty span{font-size:34px;color:#2e799f}.cart-empty strong{margin:10px 0 5px;color:#aac8d8}.cart-empty small{font-size:10px;line-height:1.5}.cart-item{padding:12px;border:1px solid #1c4863;border-radius:10px;background:#091d2d}.cart-item-head{display:flex;gap:10px;align-items:center}.cart-item-thumb{width:48px;height:48px;display:grid;place-items:center;border-radius:8px;background:radial-gradient(circle,#155274,#071722);color:#72d9ff;font-size:22px}.cart-item-copy{display:flex;flex:1;flex-direction:column}.cart-item-copy b{font-size:11px}.cart-item-copy small{margin-top:3px;color:#66879b;font-size:8px}.cart-remove{border:0;background:transparent;color:#718da0;font-size:18px;cursor:pointer}.cart-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:10px}.cart-actions button{height:32px;border:1px solid #275976;border-radius:7px;background:#0c2940;color:#9cd5ed;font-size:9px;cursor:pointer}.cart-actions button:last-child{background:#138bc9;color:#fff}
.add-to-cart{border:1px solid #2e7598!important;background:#0d334a!important;color:#bdeaff!important}
.edit-tools{grid-template-columns:repeat(5,1fr)!important}.edit-tools .measure-tool span{display:block;font-size:15px}.measure-panel{margin:-3px 0 11px;padding:10px;border:1px solid #2a6b8e;border-radius:8px;background:#071a29}.measure-panel>div{display:flex;align-items:center;justify-content:space-between}.measure-panel small{font-size:8px;color:#5fbfe8;letter-spacing:.12em}.measure-panel b{font-size:11px}.measure-panel label{display:grid;grid-template-columns:auto 1fr auto;gap:8px;align-items:center;margin-top:9px;font-size:9px}.measure-panel input{accent-color:#29b7ef}.measure-panel output{font-size:9px;color:#8edfff}.measurement-grid{position:absolute;z-index:2;left:4%;right:4%;top:50%;height:43%;opacity:0;pointer-events:none;transform:perspective(520px) rotateX(64deg);transform-origin:50% 0;background-image:linear-gradient(rgba(73,194,239,.28) 1px,transparent 1px),linear-gradient(90deg,rgba(73,194,239,.28) 1px,transparent 1px);background-size:34px 34px;mask-image:linear-gradient(to bottom,transparent 0,#000 12%,#000 72%,transparent 100%);transition:opacity .28s}.workspace.editing.measuring .measurement-grid{opacity:.62}.workspace.editing.measuring .mask-canvas{background:transparent!important}
.pose-library{margin:10px 0;border:1px solid #234f69;border-radius:8px;background:#071725}.pose-library.hidden{display:none}.pose-library summary{padding:10px;color:#b9dceb;font-size:10px;font-weight:700;cursor:pointer;list-style:none}.pose-library summary span{float:right;color:#5fcfff}.pose-grid{display:grid;grid-template-columns:1fr 1fr;gap:5px;padding:0 8px 8px;max-height:170px;overflow:auto}.pose-grid button{min-height:32px;padding:5px;border:1px solid #1b4057;border-radius:6px;background:#0a2031;color:#789bb0;font-size:8px;cursor:pointer}.pose-grid button.active{border-color:#42bce9;background:#0f3d57;color:#e0f7ff}
@media(max-width:980px){.category-grid{grid-template-columns:repeat(3,1fr)}.cart-drawer{top:90px}.category-trigger{left:14px}}
@media(max-width:720px){.category-dialog{padding:10px}.category-dialog-card{padding:20px 14px}.category-dialog h1{font-size:22px}.category-grid{grid-template-columns:repeat(2,1fr);gap:8px}.category-trigger{top:54px;left:10px}.cart-drawer{top:72px}.cart-button{display:flex!important;align-items:center;justify-content:center}.edit-tools{grid-template-columns:repeat(3,1fr)!important}}
.category-grid i{aspect-ratio:1!important}
