:root{--bg:#0b0f14;--fg:#e6f0ff;--muted:#9fb2c7;--accent:#6aa7ff;--accent-2:#00d2a8;--surface:#111826;--border:#223044;--radius:16px;--shadow:0 10px 30px rgba(0,0,0,0.35);--height-menubar:36px}*{box-sizing:border-box}body,html{padding:0;margin:0;height:100%;background:var(--bg);color:var(--fg);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,Apple Color Emoji,Segoe UI Emoji;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:inherit;text-decoration:none}.container{margin:0 auto;padding:24px}.hero{display:grid;grid-template-columns:1fr;align-items:start}.item:first-child{margin-bottom:-12px;margin-top:-12px}.hero>*{min-width:0}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:24px}.card.pad{padding:20px;max-height:290px;overflow:auto}.card.pad.mini{max-height:2rem;overflow-y:hidden;overflow-x:auto}.title{font-size:clamp(28px,3.4vw,48px);line-height:1.1;letter-spacing:-.02em;margin:0 0 12px}.subtitle{color:var(--muted);font-size:16px;line-height:1.5;margin-bottom:22px}.row{display:flex;gap:8px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;gap:10px;padding:10px 14px;border-radius:999px;border:1px solid var(--border);background:linear-gradient(180deg,#101827,#0b111b);box-shadow:var(--shadow);color:var(--fg);cursor:pointer;transition:transform .15s ease,border-color .2s ease,background .2s ease;font-weight:600}.btn:hover{transform:translateY(-1px);border-color:var(--accent)}.btn.primary{background:linear-gradient(180deg,#143b66,#0c2a4a);border-color:#274b74;align-self:flex-end}.btn.secondary{background:linear-gradient(180deg,#0f1b2c,#0b111b)}.badge{font-size:12px;color:var(--accent-2);background:rgba(0,210,168,.08);padding:6px 10px;border-radius:999px;border:1px solid rgba(0,210,168,.25);position:relative;margin-bottom:4px}.canvasWrap{height:60dvh;min-height:420px;width:100%;border-radius:var(--radius);overflow:hidden;background:radial-gradient(1200px 600px at 20% -10%,rgba(0,210,168,.08),transparent),radial-gradient(800px 400px at 120% 10%,rgba(106,167,255,.08),transparent),#0b0f14}.canvasWrap,.overlay{border:1px solid var(--border)}.overlay{position:absolute;right:12px;top:12px;background:rgba(17,24,38,.85);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:12px;padding:12px;display:grid;grid-gap:10px;gap:10px;min-width:260px;z-index:10}.overlay h4{margin:0 0 2px;font-size:14px;letter-spacing:.02em;color:var(--muted)}.overlay .ctl{display:grid;grid-gap:6px;gap:6px}.overlay input[type=range]{width:100%}.overlay input[type=text]{width:100%;padding:8px 10px;background:#0f1728;border:1px solid var(--border);border-radius:8px;color:var(--fg)}.overlay .row{justify-content:space-between}.label{font-size:12px;display:flex;align-items:center;gap:8px}.dropZone,.label{color:var(--muted)}.dropZone{margin-top:8px;padding:14px;border:2px dashed var(--border);border-radius:var(--radius);background:rgba(17,24,38,.4);text-align:center;cursor:pointer;transition:background .2s ease}.dropZone.dragover,.dropZone:hover{background:rgba(17,24,38,.6);color:var(--fg)}.infoBox{position:fixed;bottom:20px;right:20px;padding:12px 16px;background:rgba(17,24,38,.95);border:1px solid var(--border);border-radius:var(--radius);color:var(--fg);box-shadow:var(--shadow);z-index:1000;display:flex;align-items:center;gap:12px}.infoBox button{padding:6px 10px;border-radius:999px;border:1px solid var(--border);background:linear-gradient(180deg,#143b66,#0c2a4a);color:var(--fg);cursor:pointer;font-size:12px}.infoBox button:hover{border-color:var(--accent)}.fab-panel{position:absolute;right:1.5rem;bottom:calc(1.5rem + 3.5rem + .75rem);z-index:99999;display:grid;grid-gap:.75rem;gap:.75rem;padding:.75rem;border-radius:1rem;background:rgba(24,24,27,.9);-webkit-backdrop-filter:saturate(140%) blur(6px);backdrop-filter:saturate(140%) blur(6px);box-shadow:0 10px 15px -3px rgb(0 0 0/.25),0 4px 6px -4px rgb(0 0 0/.25);color:#fff;transform-origin:bottom right;transition:opacity .15s ease,transform .15s ease;will-change:transform,opacity;opacity:0;transform:scale(.96);pointer-events:none}.fab-panel[data-state=open]{opacity:1;transform:scale(1);pointer-events:auto}.fab-panel-row{display:grid;grid-template-columns:repeat(3,2.5rem);grid-gap:.5rem;gap:.5rem;justify-content:end}.fab-mini{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border:0;border-radius:9999px;background:#111;color:#fff;box-shadow:inset 0 0 0 1px rgb(255 255 255/.06),0 6px 12px -4px rgb(0 0 0/.3);transition:background-color .15s ease,transform .15s ease;opacity:1}.fab-mini:hover{background:#1f1f1f}.fab-mini:active{transform:scale(.96)}.fab-dpad{display:grid;grid-template:" .    up    .   " 1.8rem "left  ctr  right" 1.8rem " .   down   .  " 1.8rem/1.8rem 1.8rem 1.8rem;grid-gap:.25rem;gap:.25rem;justify-content:center;place-items:center}.dpad-up{grid-area:up}.dpad-down{grid-area:down}.dpad-left{grid-area:left}.dpad-right{grid-area:right}.dpad-center{grid-area:ctr;width:1.8rem;height:1.8rem}.fab-dpad .fab-dpad-btn{display:flex;align-items:center;justify-content:center;width:1.8rem;height:1.8rem;border-radius:.5rem;background:#18181b;color:#bbb;border:1px solid #2a2a2a;transition:background-color .15s ease;opacity:1}.fab-dpad .fab-dpad-btn:hover{background:#222}.fab-dpad .fab-dpad-btn svg{width:.9rem;height:.9rem}@media (prefers-reduced-motion:reduce){.fab-panel{transition:opacity .15s ease}.fab-mini:active,.fab-panel{transform:none}}.fab-button{border:0;transition:background-color .15s ease,transform .15s ease;will-change:transform}.fab-button:active{transform:scale(.96)}@media (prefers-reduced-motion:reduce){.fab-button{transition:background-color .15s ease}.fab-button:active{transform:none}}.fab-dropzone{display:flex;align-items:center;justify-content:center;height:3rem;border:1px dashed #444;border-radius:.5rem;background:rgba(255,255,255,.03);color:#aaa;font-size:.75rem;transition:background-color .15s ease}.fab-dropzone.dragover,.fab-dropzone:hover{background:rgba(255,255,255,.08);color:#fff}.fab-dropzone-label{pointer-events:none}.neutrals--background{background-color:#f9f9f9}.dark .neutrals--background{background-color:#1e1e1e}.neutrals--surface{background-color:#ffffff}.dark .neutrals--surface{background-color:#252525}.neutrals--elevated-surface{background-color:#f1f1f1}.dark .neutrals--elevated-surface{background-color:#2e2e2e}.neutrals--hover:hover{background-color:#f1f1f1}.dark .neutrals--hover:hover{background-color:#2e2e2e}.neutrals--active:active{background-color:#eaeaea}.dark .neutrals--active:active{background-color:#1a1a1a}.neutrals--border{border-color:#e0e0e0}.dark .neutrals--border{border-color:#3a3a3a}.neutrals--ring:focus{outline:none;ring:2px solid #d0d0d0}.dark .neutrals--ring:focus{ring:2px solid #3a3a3a}.neutrals--transition{transition:color .2s,background-color .2s,border-color .2s}.text--primary{color:#1e1e1e}.dark .text--primary{color:#e5e5e5}.text--secondary{color:#4b4b4b}.dark .text--secondary{color:#a3a3a3}.text--tertiary{color:#9e9e9e}.dark .text--tertiary{color:#6b6b6b}.text--disabled{color:#c0c0c0}.dark .text--disabled{color:#4d4d4d}.text--on-accent{color:#ffffff}.text--hover:hover{color:#111111}.dark .text--hover:hover{color:#ffffff}.border--base{border-color:#e0e0e0}.dark .border--base{border-color:#3a3a3a}.border--hover:hover{border-color:#d0d0d0}.dark .border--hover:hover{border-color:#4a4a4a}.border--focus:focus{outline:none;ring:2px solid #2563eb}.dark .border--focus:focus{ring:2px solid #3b82f6}.border--disabled{border-color:#dcdcdc}.dark .border--disabled{border-color:#2e2e2e}.accent--base,.dark .accent--base{background-color:#3b82f6}.accent--hover:hover,.dark .accent--hover:hover{background-color:#60a5fa}.accent--active:active,.dark .accent--active:active{background-color:#2563eb}.accent--ring:focus{outline:none;ring:2px solid #2563eb}.dark .accent--ring:focus{ring:2px solid #60a5fa}.accent--border,.dark .accent--border{border-color:#3b82f6}.accent--text,.dark .accent--text{color:#3b82f6}.accent--text-hover:hover,.dark .accent--text-hover:hover{color:#60a5fa}.state--success{color:#16a34a}.dark .state--success{color:#22c55e}.state--warning{color:#ca8a04}.dark .state--warning{color:#eab308}.state--error{color:#b91c1c}.dark .state--error{color:#ef4444}.state--info{color:#0284c7}.dark .state--info{color:#0ea5e9}.shadow--card{box-shadow:0 1px 2px rgba(0,0,0,.05)}.dark .shadow--card{box-shadow:inset 0 0 0 1px #2e2e2e}.shadow--modal{box-shadow:0 4px 6px rgba(0,0,0,.1)}.dark .shadow--modal{box-shadow:inset 0 0 0 1px #3a3a3a}.shadow--popover{box-shadow:0 10px 15px rgba(0,0,0,.2)}.dark .shadow--popover{box-shadow:0 2px 10px rgba(0,0,0,.5)}.disabled--text{color:#9e9e9e}.dark .disabled--text{color:#6b6b6b}.disabled--bg{background-color:#f0f0f0}.dark .disabled--bg{background-color:#2a2a2a}.disabled--border{border-color:#e0e0e0}.dark .disabled--border{border-color:#2e2e2e}.disabled--cursor{cursor:not-allowed;opacity:.6}.management-button{padding:.5rem;border-radius:.25rem;transition:all .15s ease-in-out;background-color:transparent;border:0 solid}.management-button:hover{background-color:#2c2c2c}.management-button-delete{padding:.5rem;border-radius:.25rem;transition:all .15s ease-in-out;color:#dc2626}.management-button-delete:hover{background-color:#dc2626;color:#ffffff}.management-move-grid{transform:translateX(calc(100% + 58px));background-color:transparent;box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);gap:.75rem}.management-move-grid,.ringbinder-management-panel{position:absolute;bottom:1.5rem;left:50%;z-index:50;border-radius:1rem;padding:.5rem 1rem;display:flex}.ringbinder-management-panel{transform:translateX(-50%);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -2px rgba(0,0,0,.05);margin:0;column-gap:.75rem}.dark .ringbinder-management-panel{background-color:#181c20;color:#8c92a4}.menuBar{display:flex;align-items:center;justify-content:space-between;padding:.5rem 1rem;-webkit-user-select:none;-moz-user-select:none;user-select:none;border-style:solid;border-width:0 1px 1px 0}.menuBarLeft,.menuBarRight{display:flex;align-items:center;font-family:Arial,sans-serif}.menuBarLeft>:not(:last-child){margin-right:.5rem}.menuBarRight>:not(:last-child){margin-right:1rem}.menuBtn{display:flex;align-items:center;transition:all .15s;background-color:transparent;border:0 solid}.menuBtn:hover{opacity:.8}.menuBtn:active{transform:scale(.95)}.menuBtnText{font-weight:600;font-size:.875rem;margin-left:.25rem}.menuIcon{width:1.25rem;height:1.25rem;transition:all .15s}.menuBtn:hover .menuIcon{transform:scale(1.1)}.noDrag{-webkit-app-region:no-drag}.drag{-webkit-app-region:drag}.panelbutton-wrapper{position:relative;align-items:center;margin:0;padding:0}.panelbutton,.panelbutton-wrapper{display:flex;border:0 solid;background-color:transparent}.panelbutton{align-items:flex-start;gap:.5rem}.panelbutton-icon{width:1.25rem;height:1.25rem;transition:transform .2s;background-color:transparent;border:0 solid}.panelbutton:hover .panelbutton-icon{transform:scale(1.1);background-color:transparent}.panelbutton-text,.tooltip{font-size:.875rem}.tooltip{position:absolute;left:100%;margin-left:2rem;padding:.25rem 1rem;background-color:#1f2937;color:#fff;border-radius:.25rem;transition:opacity .2s;opacity:1}.tooltip:after{content:"";position:absolute;left:-8px;top:50%;transform:translateY(-50%);border-top:8px solid transparent;border-right:8px solid #1f2937;border-bottom:8px solid transparent;white-space:nowrap}#ControlPanel{--w-controlpanel-open:9rem;--w-controlpanel-closed:3.5rem;position:absolute;top:var(--height-menubar);left:0;display:flex;flex-direction:column;justify-content:space-between;border-right-width:1px;border-top-width:1px;transition:all .1s;z-index:9999;height:calc(100% - var(--height-menubar));opacity:.8}#ControlPanel.open{width:var(--w-controlpanel-open)}#ControlPanel.closed{width:var(--w-controlpanel-closed)}#TopIcons{display:flex;flex-direction:column;align-items:flex-start;gap:1.5rem;padding-top:.75rem;padding-left:1rem}.toggle-btn{display:flex;align-items:center;justify-content:center;transition:all .2s;background-color:transparent;border:0 solid}.toggle-btn:hover{opacity:.8;transform:scale(1.2)}.toggle-btn:active{transform:scale(.95)}.toggle-icon{width:1.25rem;height:1.25rem}.controlpanel-bottom{flex-direction:column;align-items:flex-start;padding-bottom:1rem;padding-left:1rem}.controlpanel-bottom,.fab-button{display:flex;justify-content:center}.fab-button{position:absolute;bottom:1.5rem;right:1.5rem;align-items:center;width:3.5rem;height:3.5rem;border-radius:9999px;padding:0;border:0 solid;background-color:#000;color:#fff;box-shadow:0 10px 15px -3px rgb(0 0 0/.1),0 4px 6px -4px rgb(0 0 0/.1);transition:background-color .15s ease-in-out;z-index:9999}.fab-button:hover{background-color:#262626}.fab-button svg{width:1.5rem;height:1.5rem;flex-shrink:0}.search-bar{display:flex;align-items:center;border:1px solid #d1d5db;border-radius:.5rem;padding:.5rem .75rem;width:16rem;background-color:#ffffff;box-shadow:0 1px 2px 0 rgba(0,0,0,.05)}.search-icon{width:1.25rem;height:1.25rem;color:#6b7280;margin-right:.5rem}.search-input{outline:none;width:100%;font-size:.875rem;line-height:1.25rem;color:#1f2937}.search-input::placeholder{color:#9ca3af;opacity:1}#table-of-contents{z-index:99}.toc-panel{position:absolute;z-index:99;height:calc(100vh - var(--height-menubar));left:0;padding:.75rem;overflow:auto;transition-property:color,background-color,border-color,fill,stroke,-webkit-text-decoration-color;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,-webkit-text-decoration-color;transition-duration:.3s;border-radius:.25rem;max-width:24rem;opacity:.8;background-color:#1e1e1e;border-right:1px solid #2a2a2a;border-top:1px solid #2a2a2a;transition:all .1s ease}.toc-closed{width:3.5rem}.toc-toggle{display:flex;flex-direction:column;align-items:flex-end;padding:0 0 .25rem;transition:transform .3s ease}.icon-button{border-radius:.25rem;background-color:#374151;width:1.25rem;height:1.25rem;transition:color .15s ease,background-color .15s ease,border-color .15s ease}.icon-button:hover{background-color:#111827}.icon-5{width:1.25rem;height:1.25rem}.toc-title{font-size:1.5rem;line-height:2rem;font-weight:700;padding-bottom:.25rem}.toc-list{list-style-type:disc;padding-left:1rem}.toc-list>*+*{margin-top:.5rem}.toc-item{cursor:pointer;font-size:1.125rem;line-height:1.75rem;transition:color .2s ease;text-decoration:none}.toc-item:hover{text-decoration:underline}.toc-item-text{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.custom-scrollbar{scrollbar-width:thin;scrollbar-color:#4b5563 transparent}.custom-scrollbar::-webkit-scrollbar{width:8px;height:8px}.custom-scrollbar::-webkit-scrollbar-thumb{background:#4b5563;border-radius:9999px}.custom-scrollbar::-webkit-scrollbar-track{background:transparent}.layout-container{position:absolute;overflow:hidden;top:var(--height-menubar);z-index:50;display:grid;grid-template-rows:auto 1fr;grid-template-columns:240px 1fr 310px}.layout-container.open{left:var(--width-controlpanel-open);width:calc(100vw - var(--width-controlpanel-open))}.layout-container.closed{left:var(--width-controlpanel-closed);width:calc(100vw - var(--width-controlpanel-closed))}.topbar{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:rgba(255,255,255,.9);border-bottom:1px solid #e5e7eb;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);transition:all .15s ease-in-out}.dark .topbar{background:rgba(37,37,37,.9);border-bottom-color:#374151}.shop-header-left{font-size:1.25rem;font-weight:600;color:#111827}.dark .shop-header-left{color:#ffffff}.collapse-btn{position:relative;z-index:50;border-radius:9999px;padding:.5rem;background:#f3f4f6;transition:background-color .15s ease,color .15s ease,transform .15s ease}.collapse-btn:hover{background:#e5e7eb}.dark .collapse-btn{background:#3a3a3a}.dark .collapse-btn:hover{background:#2f2f2f}.shop-header-right{gap:1rem}.box-points,.shop-header-right{display:flex;align-items:center}.box-points{justify-content:space-between;padding:.25rem .75rem;background:#e5e7eb;border-radius:.25rem;font-size:.875rem;color:#111827}.dark .box-points{background:#3a3a3a;color:#e5e5e5}.points-value{margin-left:.5rem;font-weight:700;font-size:1rem;color:#d1d5db}.purchase-btn{background:#16a34a;color:#ffffff;padding:.25rem .75rem;border-radius:.25rem;font-size:.875rem;border:none;cursor:pointer;transition:background-color .15s ease}.purchase-btn:hover{background:#15803d}.close-btn{font-size:1.25rem;color:#4b4b4b;background:transparent;border:none;cursor:pointer;transition:color .15s ease}.close-btn:hover{color:#111111}.dark .close-btn{color:#a3a3a3}.dark .close-btn:hover{color:#ffffff}.sidebar{display:flex;flex-direction:column;background:rgba(255,255,255,.9);border-right:1px solid #e5e7eb;padding:1rem;overflow-y:auto;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:40}.dark .sidebar{background:rgba(37,37,37,.9);border-right-color:#374151}.category-btn{display:block;width:100%;text-align:left;padding:.5rem 1rem;margin-bottom:.5rem;border-radius:.25rem;background:transparent;color:#4b4b4b;transition:color .15s ease,background-color .15s ease}.category-btn:hover{background:#dbeafe}.dark .category-btn{color:#a3a3a3}.dark .category-btn:hover{background:#2e2e2e}.category-btn--selected{background:#2563eb;color:#ffffff}.category-btn--selected:hover{background:#1d4ed8}.owned-row{display:flex;align-items:center;gap:.5rem;margin-top:1rem}.owned-checkbox{width:1rem;height:1rem;border-radius:.25rem;background:#f3f4f6;border:1px solid #d1d5db;accent-color:#2563eb;outline:none;transition:box-shadow .15s ease}.owned-checkbox:focus{box-shadow:0 0 0 2px #3b82f6}.dark .owned-checkbox{background:#374151;border-color:#4b5563}.owned-label{font-size:.875rem;font-weight:500;color:#111827}.dark .owned-label{color:#d1d5db}.carousel{display:flex;padding:1rem;gap:1rem;align-items:center;overflow-x:auto;border:1px solid #e5e7eb;scrollbar-width:thin}.carousel::-webkit-scrollbar{height:6px}.carousel::-webkit-scrollbar-track{background:#6b7280}.carousel::-webkit-scrollbar-thumb{background:#1f2937;border-radius:9999px}.carousel-card{flex-shrink:0;display:flex;flex-direction:column;align-items:center;justify-content:center;width:16rem;height:20rem;padding:1rem;border:1px solid #e0e0e0;border-radius:.5rem;text-align:center;background:rgba(250,250,250,.9);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);transition:transform .15s ease,background-color .15s ease;background-image:linear-gradient(to bottom right,#374151,#6b7280,#e5e7eb)}.dark .carousel-card{border-color:#3a3a3a;background:rgba(46,46,46,.9)}.carousel-card:hover{transform:scale(1.05);background:#d1d5db}.carousel-image{object-fit:contain;display:flex;align-items:center;justify-content:center;width:100%;height:14rem}.carousel-divider{border-top:1px solid #d1d5db;width:100%;margin-top:.5rem}.carousel-name{align-self:flex-start;margin-top:.5rem;font-size:1.125rem;font-weight:600;color:#1f2937}.carousel-select{align-self:flex-end;display:flex;padding:.25rem .75rem;font-size:.875rem;border-radius:.25rem;background:#e5e7eb;color:#1f2937;cursor:pointer;transition:background-color .15s ease}.carousel-select:hover{background:#d1d5db}.dark .carousel-select{background:#3a3a3a;color:#e5e5e5}.dark .carousel-select:hover{background:#2f2f2f}.carousel-price{align-self:flex-end;display:flex;align-items:flex-end;gap:.25rem}.carousel-price-value{font-size:1rem;font-weight:700;color:#1f2937}.carousel-price-note{font-size:.875rem;color:#1f2937}.confirm-card{position:relative;width:100%;max-width:32rem;padding:1.5rem;border-radius:.5rem;background:#ffffff;border:2px solid #e5e7eb;transition:background-color .15s ease,border-color .15s ease}.dark .confirm-card{background:#252525;border-color:#374151}.confirm-close{position:absolute;top:.75rem;right:.75rem;font-size:1.25rem;color:#4b4b4b;background:transparent;border:none;cursor:pointer;transition:color .15s ease}.confirm-close:hover{color:#111111}.dark .confirm-close{color:#a3a3a3}.dark .confirm-close:hover{color:#ffffff}.confirm-title{font-size:1.25rem;font-weight:600;margin-bottom:1rem;color:#111827}.dark .confirm-title{color:#e5e5e5}.confirm-image-box{height:16rem;margin-bottom:1rem}.confirm-image,.confirm-image-box{display:flex;align-items:center;justify-content:center}.confirm-image{object-fit:contain;width:100%;height:14rem}.confirm-meta{color:#555555;margin-bottom:1rem}.confirm-meta p{margin-top:.25rem;font-size:.875rem;color:#4b5563}.dark .confirm-meta{color:#a3a3a3}.dark .confirm-meta p{color:#9ca3af}.confirm-primary-btn{width:100%;background:#2563eb;color:#ffffff;padding:.5rem 0;border-radius:.25rem;border:none;cursor:pointer;transition:background-color .15s ease}.confirm-primary-btn:hover{background:#1d4ed8}.confirm-btn-row{display:flex;align-items:center;justify-content:center;margin-top:.5rem}.confirm-price{display:flex;align-items:center;margin-left:.5rem}.self-end-button{align-self:flex-end;display:flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;border-radius:9999px;background-color:#9ca3af;border:1px solid #6b7280}.self-end-button .lamp-desk{width:1rem;height:1rem;color:#1f2937}.annotation{color:#111827;background-color:#ffffff;border:1px solid #d1d5db;font-weight:500;border-radius:.5rem;font-size:3rem;padding:.625rem 1.25rem;-webkit-margin-end:.5rem;margin-inline-end:.5rem;margin-bottom:.5rem;z-index:1}.annotation:hover{background-color:#f3f4f6}.annotation:focus{outline:none;box-shadow:0 0 0 4px #f3f4f6}.annotation.dark{background-color:#333333;color:#ffffff;border:1px solid #4b5563}.annotation.dark:hover{background-color:#374151;border-color:#4b5563}.annotation.dark:focus{box-shadow:0 0 0 4px #374151}.hud-2d{position:absolute;top:32px;right:64px}@media (min-width:800px){.hud-2d{position:absolute;left:calc(100vw - 100px);top:32px}}.hud-3d{transform:translate3d(calc(50%),calc(-50%),0);text-align:center;font-weight:700;width:40px;color:#181c20;background:#8c92a4;border-radius:5px;-webkit-user-select:none;-moz-user-select:none;user-select:none;overflow:visible;z-index:100;opacity:63%;border:1px solid transparent;cursor:pointer}.hud-3d:hover{border:1px solid black;opacity:80%}.page-input-form{overflow:visible;z-index:100;padding:5px}.page-count,.page-input,.page-input-form{justify-content:space-between}.custom,.page-count,.page-input,.page-input-form{display:flex;align-items:center;flex-direction:column}.custom{justify-content:center;width:2.5rem;height:2.5rem;margin-bottom:4px}.page-counter{background-color:#8c92a4;color:#181c20;border-radius:.25rem;padding-left:.25rem;padding-right:.25rem;opacity:.6}.button-container{position:absolute;top:50%;left:0;padding:0 64px;width:calc(100% - 600px);border-radius:5px;display:flex;justify-content:space-between;align-items:flex-start;pointer-events:none;z-index:111}.common-button{font-size:18px;padding:12px 24px;color:#181c20;background:#8c92a4;border-radius:8px;cursor:pointer;pointer-events:auto;transition:background-color 50ms ease,transform 50ms ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);box-shadow:0 4px 6px rgba(0,0,0,.2);z-index:100;opacity:33%}@media (hover:hover) and (pointer:fine){.common-button:hover{border:1px solid black;opacity:.8;transform:translateY(-2px)}}@media (hover:none){.common-button:active{border:1px solid black;opacity:.8;transform:translateY(-2px)}}.login-container{display:flex;align-items:center;justify-content:center;min-height:100vh;background:#0a0a0a;color:#f2f2f2;font-family:system-ui,sans-serif}.login-card{background:#1a1a1a;padding:2rem;border-radius:16px;box-shadow:0 8px 24px rgba(0,0,0,.6);width:100%;max-width:380px}.login-title{font-size:1.8rem;margin-bottom:1.5rem;text-align:center}.login-form{display:flex;flex-direction:column;gap:1rem}.login-form label{font-size:.9rem;margin-bottom:.2rem}.login-form input{padding:.75rem;border:none;border-radius:8px;background:#2a2a2a;color:#f2f2f2;font-size:1rem}.login-form input:focus{outline:2px solid #4a90e2}.login-form button{padding:.8rem;background:#4a90e2;border:none;border-radius:8px;color:white;font-size:1rem;font-weight:600;cursor:pointer;transition:background .2s ease-in-out}.login-form button:hover{background:#357abd}.login-footer{margin-top:1.5rem;text-align:center;font-size:.9rem}.login-footer a{color:#4a90e2;text-decoration:none}.login-footer a:hover{text-decoration:underline}