@import "https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Space+Grotesk:wght@400;500;600;700&display=swap";:root{--ink:#161616;--muted:#716f69;--paper:#f5f3ee;--line:#d9d6ce;--danger:#9e4131;color:var(--ink);background:var(--paper);font-family:Space Grotesk,sans-serif}*{box-sizing:border-box}body{background:var(--paper);min-width:320px;margin:0}button,input,select{font:inherit}a{color:inherit;text-decoration:none}.landing-shell,.page-shell{max-width:1240px;margin:0 auto;padding:0 32px 64px}.page-header{justify-content:space-between;align-items:center;padding:28px 0;display:flex}.page-header__actions{align-items:center;gap:8px;display:inline-flex}.brand{letter-spacing:-.06em;font-size:1.25rem;font-weight:700}.brand span{color:#8b9181}.button{border:1px solid var(--ink);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;gap:10px;padding:11px 18px;transition:transform .2s,background .2s;display:inline-flex}.button:hover:not(:disabled){transform:translateY(-2px)}.button:disabled{cursor:not-allowed;opacity:.45}.button--primary{background:var(--ink);color:#fff}.button--primary .iconify{color:inherit!important}.button--primary:hover:not(:disabled){background:#35352f}.button--secondary{border-color:var(--line);background:#fff}.button--ghost{border-color:#0000}.button--login{color:#627533;font-weight:600}.button--login:hover{background:#eff2d6}.button--large{padding:16px 24px;font-weight:600}.hero__actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.eyebrow{color:#8b9181;letter-spacing:.08em;text-transform:uppercase;margin:0 0 12px;font-family:DM Mono,monospace;font-size:.7rem}.hero{grid-template-columns:1.05fr .95fr;align-items:center;gap:80px;padding:80px 0 100px;display:grid}.hero h1{letter-spacing:-.09em;max-width:720px;margin:0;font-size:calc(clamp(3.2rem,7vw,6.4rem));line-height:.92}em{color:#84915b;font-style:normal}.hero__lead{max-width:550px;color:var(--muted);margin:28px 0;font-size:1.1rem;line-height:1.6}.privacy-note{color:var(--muted);font-family:DM Mono,monospace;font-size:.72rem}.hero__visual{aspect-ratio:1;border:1px solid var(--line);place-items:center;display:grid;overflow:hidden}.hero-dots{color:var(--ink);letter-spacing:-.14em;font-size:calc(clamp(4rem,10vw,9rem));font-weight:700;line-height:.75;transform:rotate(-12deg)}.hero-dots span{color:#0000;-webkit-text-stroke:2px var(--ink)}.steps{border-top:1px solid var(--line);grid-template-columns:repeat(3,1fr);display:grid}.steps>div{border-right:1px solid var(--line);padding:28px 24px 0 0}.steps>div:not(:first-child){padding-left:24px}.steps>div:last-child{border-right:0}.steps span{color:#84915b;font-family:DM Mono,monospace;font-size:.8rem}.steps h2{margin:20px 0 8px;font-size:1.15rem}.notice,.steps p{color:var(--muted);line-height:1.5}.workspace{grid-template-columns:minmax(280px,336px) minmax(0,1fr);align-items:start;gap:24px;padding:24px 0 40px;display:grid}.workspace__sidebar{min-width:0;position:sticky;top:16px}.workspace__content{min-width:0}.uploader{text-align:center;border:1px dashed #aaa69b;justify-items:center;gap:10px;min-height:360px;padding:72px 24px;transition:background .2s,border-color .2s;display:grid}.uploader--dragging{border-color:var(--ink);background:#e9edc9}.uploader h2{margin:0}.uploader p{color:var(--muted);margin:0 0 16px}.uploader__icon{border:1px solid var(--ink);border-radius:50%;place-items:center;width:48px;height:48px;font-size:1.6rem;display:grid}.workspace__empty-actions{justify-content:flex-end;align-items:center;gap:10px;min-height:38px;margin-bottom:8px;display:flex}.workspace__topbar{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.workspace__topbar-actions{justify-content:flex-end;align-items:center;gap:10px;display:inline-flex}.workspace__topbar span,.workspace__topbar strong{display:block}.workspace__topbar>div>span{color:var(--muted);margin-top:5px;font-size:.8rem}.preview-grid{grid-template-columns:minmax(220px,.72fr) minmax(0,1.28fr);align-items:start;gap:20px;display:grid}.preview-card{border:1px solid var(--line);background:#fff;min-width:0}.preview-card--original{background:#faf9f5;border-style:dashed}.preview-card--result .preview-card__zoom-trigger{min-height:472px}.preview-card--result .preview-card__zoom-trigger img{max-height:560px}.preview-card__heading{border-bottom:1px solid var(--line);text-transform:uppercase;justify-content:space-between;padding:14px 16px;font-family:DM Mono,monospace;font-size:.72rem;display:flex}.preview-card__heading--result{align-items:center;gap:10px}.preview-card__heading-actions{align-items:center;gap:8px;display:inline-flex}.garment-preview-toggle{border:1px solid var(--line);min-height:26px;color:var(--ink);cursor:pointer;letter-spacing:0;text-transform:none;white-space:nowrap;background:#fff;border-radius:999px;align-items:center;gap:6px;padding:4px 7px;font-family:Space Grotesk,sans-serif;font-size:.68rem;font-weight:600;display:inline-flex}.garment-preview-toggle:hover{border-color:var(--ink)}.garment-preview-toggle[aria-pressed=true]{border-color:#83b900;box-shadow:inset 0 0 0 1px #83b900}.garment-preview-toggle__swatch{border:1px solid #aaa69b;border-radius:50%;width:11px;height:11px}.status-dot{color:#71843e}.preview-card__canvas{min-height:360px;color:var(--muted);place-items:center;padding:24px;display:grid;overflow:hidden}.preview-card__canvas img{-o-object-fit:contain;object-fit:contain;max-width:100%;max-height:500px;display:block}.preview-card__canvas--dark{position:relative}.preview-card__image--picking{cursor:crosshair;outline-offset:4px;outline:2px solid #a4d900}.preview-card__picker-hint{z-index:1;color:#fff;pointer-events:none;background:#161616e6;border-radius:999px;padding:8px 11px;font-size:.75rem;font-weight:600;position:absolute;bottom:18px;left:50%;transform:translate(-50%)}.preview-card__canvas--dark{background:#272822}.preview-card__canvas--dark img{max-height:500px}.preview-card__canvas--transparent{background-color:#fff}.preview-card__canvas--transparent.preview-card__canvas--garment{background-image:none}.preview-card__zoom-trigger{cursor:zoom-in;background:0 0;border:0;place-items:center;width:100%;min-height:312px;padding:24px;display:grid;position:relative}.preview-card__zoom-trigger img{-o-object-fit:contain;object-fit:contain;max-width:100%;max-height:500px;display:block}.preview-card__zoom-hint{color:#fff;opacity:0;background:#161616db;border-radius:999px;padding:6px 9px;font-size:.72rem;font-weight:600;transition:opacity .2s,transform .2s;position:absolute;bottom:16px;right:16px;transform:translateY(4px)}.preview-card__zoom-trigger:focus-visible .preview-card__zoom-hint,.preview-card__zoom-trigger:hover .preview-card__zoom-hint{opacity:1;transform:translateY(0)}.zoom-modal{z-index:1400;background:#0f0f0eb8;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.zoom-modal__dialog{border:1px solid var(--line);background:#fff;grid-template-rows:auto minmax(0,1fr) auto;width:min(1200px,100%);height:calc(min(90vh,900px));display:grid;box-shadow:0 24px 70px #0000005c}.zoom-modal__header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;padding:18px 20px;display:flex}.zoom-modal__header .eyebrow{margin-bottom:5px}.zoom-modal__header h2{margin:0;font-size:1rem}.zoom-modal__actions{align-items:center;gap:7px;display:flex}.zoom-control,.zoom-modal__close,.zoom-modal__reset{border:1px solid var(--line);color:var(--ink);cursor:pointer;background:#fff}.zoom-control{border-radius:4px;width:32px;height:32px;font-size:1.25rem;line-height:1}.zoom-modal__percent{text-align:center;min-width:52px;font-family:DM Mono,monospace;font-size:.75rem}.zoom-modal__range{width:110px;accent-color:var(--ink)}.zoom-modal__reset{border-radius:4px;min-height:32px;padding:0 10px;font-size:.75rem}.zoom-modal__close{border-radius:50%;place-items:center;width:32px;height:32px;font-size:1.4rem;line-height:1;display:grid}.zoom-control:disabled,.zoom-modal__reset:disabled{cursor:not-allowed;opacity:.4}.zoom-modal__viewport{touch-action:none;min-height:0;padding:28px;position:relative;overflow:hidden}.zoom-modal__viewport--panning{cursor:grab}.zoom-modal__viewport--panning:active{cursor:grabbing}.zoom-modal__viewport img{-o-object-fit:contain;object-fit:contain;transform-origin:50%;-webkit-user-select:none;user-select:none;will-change:transform;width:calc(100% - 56px);max-width:none;height:calc(100% - 56px);max-height:none;transition:transform .12s ease-out;display:block;position:absolute;inset:28px}.zoom-modal__hint{border-top:1px solid var(--line);color:var(--muted);margin:0;padding:12px 20px;font-size:.75rem}.checkerboard{background-color:#fff;background-image:linear-gradient(45deg,#ecebe7 25%,#0000 0),linear-gradient(-45deg,#ecebe7 25%,#0000 0),linear-gradient(45deg,#0000 75%,#ecebe7 0),linear-gradient(-45deg,#0000 75%,#ecebe7 0);background-position:0 0,0 12px,12px -12px,-12px 0;background-size:24px 24px}.controls{border:1px solid var(--line);background:#fff;grid-template-columns:minmax(0,1fr);gap:18px;margin:0;padding:22px;display:grid}.controls__header{justify-content:space-between;align-items:start;display:flex}.controls__header h2{margin:0;font-size:1.25rem}.badge{background:#eff2d6;border-radius:999px;padding:6px 10px;font-family:DM Mono,monospace;font-size:.7rem}.field{color:var(--muted);gap:10px;font-size:.85rem;display:grid}.field strong{color:var(--ink)}.field input{accent-color:var(--ink)}.field select{border:1px solid var(--line);background:#fff;border-radius:4px;padding:11px}.print-size-field{gap:7px}.print-size-field__input{border:1px solid var(--line);background:#fff;border-radius:4px;align-items:center;display:flex;overflow:hidden}.print-size-field__input input{border:0;border-right:1px solid var(--line);width:100%;min-width:0;color:var(--ink);padding:11px;font-weight:600}.print-size-field__input input:focus{outline-offset:-2px;outline:2px solid #83b900}.print-size-field__input span{color:var(--muted);flex:none;padding:0 10px;font-size:.75rem}.print-size-field small{color:var(--muted);font-size:.72rem;line-height:1.4}.garment-field{border:0;gap:10px;min-width:0;margin:0;padding:0;display:grid}.garment-field legend{color:var(--muted);margin-bottom:0;font-size:.85rem}.garment-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.garment-option{border:1px solid var(--line);min-height:42px;color:var(--ink);cursor:pointer;text-transform:uppercase;background:#fff;border-radius:5px;justify-content:center;align-items:center;gap:6px;padding:7px 5px;font-size:.72rem;font-weight:600;display:inline-flex}.garment-option:hover:not(:disabled){border-color:var(--ink)}.garment-option--selected{color:#4f7000;border-color:#83b900;box-shadow:inset 0 0 0 1px #83b900}.garment-option__swatch{border:1px solid #b8b5ae;border-radius:50%;width:13px;height:13px;display:inline-block}.garment-option__swatch--black{background:#161616;border-color:#161616}.garment-option__swatch--white{background:#fff}.garment-option__eyedropper{font-size:1.1rem;line-height:.6;transform:rotate(-45deg)}.garment-custom{align-items:center;gap:8px;min-width:0;display:flex}.garment-custom input[type=color]{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:4px;width:34px;height:30px;padding:2px}.garment-custom code{min-width:64px;color:var(--muted);font-family:DM Mono,monospace;font-size:.7rem}.garment-custom__sample{border:1px solid var(--line);min-height:30px;color:var(--ink);cursor:pointer;background:#fff;border-radius:4px;margin-left:auto;padding:0 8px;font-size:.68rem}.garment-custom__sample:disabled,.garment-option:disabled{cursor:not-allowed;opacity:.45}.angle-field,.pattern-field{border:0;grid-column:auto;min-width:0;margin:0;padding:0}.angle-field legend,.pattern-field legend{color:var(--muted);margin-bottom:10px;font-size:.85rem}.pattern-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.angle-option,.pattern-option{border:1px solid var(--line);color:var(--ink);cursor:pointer;background:#fff;border-radius:5px;font-weight:600}.pattern-option{text-transform:uppercase;justify-items:center;gap:7px;padding:8px 5px;font-size:.65rem;display:grid}.pattern-option__preview{background-color:#fff;border:1px solid #ebe8df;width:100%;height:38px;display:block}.pattern-option__preview--points{background-image:radial-gradient(circle,#1d1d1d 18%,#0000 20%);background-size:7px 7px}.pattern-option__preview--lines{background-image:repeating-linear-gradient(135deg,#1d1d1d 0 2px,#0000 0 6px)}.pattern-option__preview--squares{background-image:repeating-conic-gradient(#1d1d1d 0 25%,transparent 0 50%);background-size:8px 8px}.pattern-option__preview--diamonds{background-image:linear-gradient(135deg,#0000 35%,#1d1d1d 36% 64%,#0000 65%),linear-gradient(45deg,#0000 35%,#1d1d1d 36% 64%,#0000 65%);background-size:9px 9px}.pattern-option__preview--weave{background-image:repeating-linear-gradient(0deg,#1d1d1d 0 1px,#0000 0 5px),repeating-linear-gradient(90deg,#1d1d1d 0 1px,#0000 0 5px)}.pattern-option__preview--chain{background-image:radial-gradient(at 25%,#1d1d1d 20%,#0000 23%),radial-gradient(at 75%,#1d1d1d 20%,#0000 23%);background-size:10px 8px}.pattern-option__preview--grain{background-image:radial-gradient(#1d1d1d 1px,#0000 1.3px);background-size:4px 5px}.angle-option:hover:not(:disabled),.pattern-option:hover:not(:disabled){border-color:var(--ink)}.angle-option--selected,.pattern-option--selected{color:#4f7000;border-color:#83b900;box-shadow:inset 0 0 0 1px #83b900}.angle-options{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.angle-option{min-height:39px;padding:7px;font-size:.8rem}.controls__actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.page-shell--editor{max-width:none;height:100svh;padding:0 24px 16px;overflow:hidden}.page-shell--editor .page-header{height:72px;padding:0}.page-shell--editor .workspace{grid-template-columns:316px minmax(0,1fr);gap:20px;height:calc(100svh - 88px);padding:0}.page-shell--editor .workspace__sidebar{height:100%;min-height:0;top:0}.page-shell--editor .workspace__content{scrollbar-gutter:stable;min-height:0;padding:8px 2px 0 0;overflow-y:auto}.page-shell--editor .controls{grid-template-rows:auto minmax(0,1fr);height:100%;max-height:none;padding:0;display:grid;overflow:hidden}.controls__toggle{border:0;border-bottom:1px solid var(--line);width:100%;min-height:76px;color:var(--ink);text-align:left;cursor:pointer;background:#fff;justify-content:space-between;align-items:center;padding:16px 18px;display:flex}.controls__toggle:hover{background:#faf9f5}.controls__toggle-copy{gap:3px;display:grid}.controls__toggle-copy .eyebrow{margin:0}.controls__toggle-copy strong{font-size:1rem}.controls__toggle-meta{align-items:center;gap:9px;display:inline-flex}.controls__chevron{font-size:1.25rem;line-height:1;transition:transform .2s}.controls__chevron--open{transform:rotate(180deg)}.controls__body{min-height:0;padding:18px 18px max(24px,env(safe-area-inset-bottom));grid-template-columns:minmax(0,1fr);gap:16px;display:grid;overflow-y:auto}.controls__body .angle-field,.controls__body .controls__actions,.controls__body .pattern-field{grid-column:auto}.controls__body .pattern-options{grid-template-columns:repeat(3,minmax(0,1fr))}.controls__body .angle-options{grid-template-columns:repeat(4,minmax(0,1fr))}.controls__body .controls__actions{grid-template-columns:repeat(2,minmax(0,1fr));justify-content:stretch;display:grid}.notice{margin:18px 0 0;font-size:.8rem}.notice--error{color:var(--danger)}.loading-card{text-align:center;color:var(--muted);padding:80px 0}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@media (width<=900px){.workspace{grid-template-columns:1fr}.workspace__sidebar{position:static}.angle-options,.pattern-options{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width<=1100px){.page-shell--editor .preview-grid{grid-template-columns:1fr}.preview-card--original .preview-card__canvas{min-height:280px}.preview-card--result .preview-card__canvas{min-height:440px}.preview-card--result .preview-card__zoom-trigger{min-height:392px}}@media (width<=760px){.landing-shell,.page-shell{padding:0 18px 40px}.hero{grid-template-columns:1fr;gap:40px;padding:48px 0 64px}.hero__visual{max-width:480px}.controls,.preview-grid,.steps{grid-template-columns:1fr}.steps>div,.steps>div:not(:first-child){border-right:0;border-bottom:1px solid var(--line);padding:24px 0}.steps>div:last-child{border-bottom:0}.pattern-options{grid-template-columns:repeat(3,minmax(0,1fr))}.angle-options{grid-template-columns:repeat(2,minmax(0,1fr))}.controls__actions{grid-column:auto;justify-content:stretch}.workspace__topbar{align-items:flex-start;gap:16px}.workspace__topbar .button{white-space:nowrap}.zoom-modal{padding:12px}.zoom-modal__dialog{height:calc(min(92vh,900px))}.zoom-modal__header{align-items:flex-start;gap:12px;padding:14px}.zoom-modal__header h2{display:none}.zoom-modal__actions{flex-wrap:wrap;justify-content:flex-end}.zoom-modal__range{width:88px}.zoom-modal__viewport{padding:16px}.zoom-modal__viewport img{width:calc(100% - 32px);height:calc(100% - 32px);inset:16px}.zoom-modal__hint{padding:10px 14px}}@media (width<=900px){.page-shell--editor{height:auto;min-height:100dvh;padding:0 24px 40px;overflow:visible}.page-shell--editor .page-header{height:auto;padding:24px 0}.page-shell--editor .workspace{height:auto;padding:0}.page-shell--editor .workspace__content{padding:0;overflow:visible}.page-shell--editor .controls{height:auto;max-height:none}.page-shell--editor .controls__body{overflow:visible}}@media (width<=760px){.page-shell--editor{padding:0 18px 40px}.page-shell--editor .workspace{gap:16px}}.page-shell--sheet{max-width:1480px;height:100svh;min-height:0;padding-bottom:28px;overflow:hidden}.sheet-workspace{grid-template-columns:minmax(300px,360px) minmax(0,1fr);align-items:start;gap:28px;height:100%;min-height:0;padding-top:28px;display:grid}.sheet-sidebar{scrollbar-gutter:stable;gap:14px;min-width:0;height:100%;max-height:100%;padding-right:8px;display:grid;position:sticky;top:20px;overflow-y:auto}.sheet-main__header,.sheet-panel__heading,.sheet-sidebar__header{justify-content:space-between;align-items:center;gap:14px;display:flex}.sheet-sidebar__header{padding:4px 0 10px}.sheet-main__header h2,.sheet-sidebar__header h1{letter-spacing:-.04em;margin:0}.sheet-main__header .eyebrow,.sheet-sidebar__header .eyebrow{margin-bottom:5px}.sheet-sidebar__header .button{padding:7px 10px;font-size:.75rem}.sheet-panel{border:1px solid var(--line);background:#fff;gap:13px;padding:18px;display:grid}.sheet-panel__heading h2{margin:0;font-size:.95rem}.sheet-count{background:#eff2d6;border-radius:50%;place-items:center;min-width:24px;height:24px;font-family:DM Mono,monospace;font-size:.7rem;display:grid}.sheet-field{color:var(--muted);gap:6px;font-size:.78rem;display:grid}.sheet-field input,.sheet-panel select{border:1px solid var(--line);width:100%;min-width:0;color:var(--ink);background:#fff;border-radius:4px;padding:9px 10px}.sheet-field__hint{color:var(--muted);font-size:.68rem;line-height:1.35}.sheet-input-unit{border:1px solid var(--line);border-radius:4px;align-items:center;display:flex;overflow:hidden}.sheet-input-unit input{border:0;border-radius:0}.sheet-input-unit small{color:var(--muted);padding:0 10px}.sheet-fields-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.sheet-upload{min-height:38px;color:var(--ink);cursor:pointer;background:#faf9f5;border:1px dashed #aaa69b;font-size:.8rem;font-weight:600}.sheet-upload:hover{border-color:var(--ink);background:#f2f0e9}.sheet-empty{color:var(--muted);padding:10px 0;font-size:.78rem;line-height:1.4}.sheet-asset-list{gap:7px;max-height:310px;display:grid;overflow-y:auto}.sheet-asset{border:1px solid var(--line);min-width:0;color:var(--ink);background:#fff;align-items:center;gap:9px;padding:7px;display:flex}.sheet-asset--selected,.sheet-asset:hover{border-color:#83b900;box-shadow:inset 0 0 0 1px #83b900}.sheet-asset__select{min-width:0;color:inherit;cursor:pointer;text-align:left;background:0 0;border:0;flex:auto;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:9px;padding:0;display:grid}.sheet-asset__remove:focus-visible,.sheet-asset__select:focus-visible{outline-offset:2px;outline:2px solid #83b900}.sheet-asset img{-o-object-fit:contain;object-fit:contain;background:#f1f0eb;width:42px;height:42px}.sheet-asset__select>span{gap:3px;min-width:0;display:grid}.sheet-asset strong{text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;overflow:hidden}.sheet-asset small{color:var(--muted);font-size:.66rem}.sheet-asset__status{color:#4f7000;text-transform:uppercase;font-family:DM Mono,monospace;font-size:.6rem}.sheet-asset__status--pending{color:var(--danger)}.sheet-asset__remove{border:1px solid var(--line);width:26px;height:26px;color:var(--muted);cursor:pointer;background:0 0;border-radius:4px;flex:none;place-items:center;padding:0;display:grid}.sheet-asset__remove:hover{border-color:var(--danger);color:var(--danger);background:#fff5f2}.sheet-panel--preflight{gap:0;padding:0}.sheet-preflight__toggle{width:100%;min-width:0;color:var(--ink);cursor:pointer;text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;gap:10px;padding:15px 16px;display:flex}.sheet-preflight__toggle:hover{background:#faf9f5}.sheet-preflight__toggle:focus-visible{outline-offset:-3px;outline:2px solid #83b900}.sheet-preflight__toggle-action,.sheet-preflight__toggle-title{align-items:center;gap:9px;min-width:0;display:flex}.sheet-preflight__toggle-title>svg{color:#815b13;flex:none}.sheet-preflight__toggle-title>span{gap:3px;min-width:0;display:grid}.sheet-preflight__toggle-title strong{font-size:.95rem}.sheet-preflight__toggle-title small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.67rem;overflow:hidden}.sheet-preflight__toggle-action>svg{color:var(--muted);flex:none}.sheet-panel--preflight-open .sheet-preflight__toggle{border-bottom:1px solid var(--line)}.sheet-preflight__details{gap:10px;padding:14px 16px 16px;display:grid}.sheet-preflight__total{color:#78510c;white-space:nowrap;background:#f7e6c3;border-radius:999px;padding:4px 7px;font-family:DM Mono,monospace;font-size:.62rem}.sheet-preflight__total--ready{color:#416500;background:#e0efd2}.sheet-preflight__list{gap:7px;max-height:280px;display:grid;overflow-y:auto}.sheet-preflight__asset{background:#fffaf0;border:1px solid #e3c98d;gap:7px;padding:9px;display:grid}.sheet-preflight__asset--ready{background:#f5faef;border-color:#b9d99c}.sheet-preflight__asset-header{color:#815b13;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:7px;display:grid}.sheet-preflight__asset--ready .sheet-preflight__asset-header{color:#4f7000}.sheet-preflight__asset-header strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;overflow:hidden}.sheet-preflight__asset-header small{color:var(--muted);font-family:DM Mono,monospace;font-size:.62rem}.sheet-preflight__findings{gap:5px;padding-left:16px;display:grid}.sheet-preflight__findings,.sheet-preflight__ready-message{color:var(--muted);margin:0;font-size:.68rem;line-height:1.35}.sheet-remove{color:var(--danger);cursor:pointer;background:0 0;border:0;font-size:.7rem}.sheet-selected-name{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin:-5px 0 2px;font-size:.75rem;overflow:hidden}.sheet-quantity-summary{border:1px solid var(--line);background:var(--surface,#fff);color:var(--muted);justify-content:space-between;align-items:center;gap:10px;margin-top:-7px;padding:7px 9px;font-size:.68rem;display:flex}.sheet-quantity-summary strong{color:var(--ink);font-family:DM Mono,monospace;font-size:.72rem}.sheet-quantity-summary--pending{background:#fffaf0;border-color:#d9bd72}.sheet-quantity-summary--pending strong{color:#765400}.sheet-generate-quantity{width:100%;min-height:35px;padding:7px 11px;font-size:.84rem}.sheet-quantity-pending-note{color:var(--muted);text-align:center;margin:-4px 0 0;font-size:.67rem;line-height:1.4}.sheet-fill{border:1px solid var(--ink);min-height:38px;color:var(--ink);cursor:pointer;background:0 0;border-radius:4px;justify-content:center;align-items:center;gap:7px;padding:8px 10px;font-size:.76rem;font-weight:600;line-height:1.2;transition:background .18s,color .18s,border-color .18s;display:inline-flex}.sheet-fill:hover{background:#eff2d6;border-color:#83b900}.sheet-fill:focus-visible{outline-offset:2px;outline:2px solid #83b900}.sheet-panel--marks{gap:10px}.sheet-check,.sheet-panel--marks .sheet-panel__heading>svg{color:var(--muted)}.sheet-panel--marks .sheet-field{gap:5px}.sheet-panel--marks .sheet-field input:disabled{cursor:not-allowed;opacity:.52}.sheet-check{align-items:center;gap:8px;font-size:.75rem;display:flex}.sheet-check input{accent-color:#83b900}.sheet-sidebar__actions{gap:8px;padding:2px 0 0;display:grid}.sheet-sidebar__actions .button,.sheet-sidebar__actions select{width:100%;min-height:40px}.sheet-optimizing-icon{animation:.8s linear infinite sheet-optimizing-spin}@keyframes sheet-optimizing-spin{to{transform:rotate(1turn)}}.sheet-optimization-notice{color:var(--muted);text-align:center;margin:0;font-size:.72rem;line-height:1.4}.sheet-sidebar__actions select{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:999px;padding:9px 10px}.sheet-main{min-width:0}.sheet-main__header{margin-bottom:18px}.sheet-main__header-actions{justify-content:flex-end;align-items:center;gap:14px;min-width:0;display:flex}.sheet-main__header-actions .general-settings--inline{flex:none}.sheet-main__header h2{font-size:calc(clamp(1.2rem,2vw,1.65rem))}.sheet-metrics{text-align:right;justify-items:end;gap:3px;font-family:DM Mono,monospace;display:grid}.sheet-metrics span{font-size:.88rem;font-weight:500}.sheet-metrics small{color:var(--muted);font-size:.68rem}.sheet-dropzone{border:1px solid var(--line);background:#faf9f5;align-content:start;place-items:start center;height:calc(min(700px,100svh - 180px));min-height:0;padding:24px;transition:border-color .2s,background .2s;display:grid;overflow:auto}.sheet-dropzone--dragging{background:#eff2d6;border-color:#83b900}.sheet-dropzone__empty{color:var(--muted);text-align:center;justify-items:center;gap:12px;display:grid}.sheet-dropzone__empty strong{color:var(--ink);font-size:1.1rem}.sheet-dropzone__empty span{font-size:.82rem}.sheet-canvas{background-color:#fff;background-image:linear-gradient(45deg,#ecebe7 25%,#0000 0),linear-gradient(-45deg,#ecebe7 25%,#0000 0),linear-gradient(45deg,#0000 75%,#ecebe7 0),linear-gradient(-45deg,#0000 75%,#ecebe7 0);background-position:0 0,0 12px,12px -12px,-12px 0;background-size:24px 24px;border:1px solid #cbc7bc;flex:none;width:min(100%,900px);min-height:0;max-height:none;position:relative;overflow:hidden}.sheet-placement{cursor:grab;transform-origin:50%;background:#ffffff80;border:1px solid #16161659;place-items:center;padding:0;display:grid;position:absolute;overflow:hidden}.sheet-placement:active{cursor:grabbing}.sheet-placement--selected{z-index:2;border:2px solid #83b900;box-shadow:0 0 0 2px #83b90033}.sheet-placement img{-o-object-fit:contain;object-fit:contain;pointer-events:none;width:100%;height:100%;display:block}.sheet-placement[data-rotation="90"] img{transform:rotate(90deg)}.sheet-placement span{color:#fff;background:#161616cc;border-radius:50%;place-items:center;min-width:18px;height:18px;font-family:DM Mono,monospace;font-size:.58rem;display:grid;position:absolute;top:4px;left:4px}.sheet-status{color:var(--muted);justify-content:space-between;gap:16px;margin-top:10px;font-family:DM Mono,monospace;font-size:.7rem;display:flex}.sheet-status--error{color:var(--danger)}@media (width<=920px){.page-shell--sheet{height:auto;min-height:100dvh;overflow:visible}.sheet-workspace{grid-template-columns:1fr;height:auto}.sheet-sidebar{height:auto;max-height:none;padding-right:0;position:static;overflow:visible}.sheet-sidebar__header{padding-top:0}.sheet-panel--assets{order:2}.sheet-panel--selected{order:3}.sheet-sidebar__actions{order:4}.sheet-main{order:1}}@media (width<=600px){.page-shell--sheet{padding:0 18px 40px}.sheet-workspace{gap:18px;padding-top:16px}.sheet-main__header,.sheet-sidebar__header{align-items:flex-start}.sheet-sidebar__header h1{font-size:1.25rem}.sheet-main__header h2{font-size:1.15rem}.sheet-main__header-actions{flex-direction:column;align-items:flex-end;gap:8px}.sheet-metrics{justify-items:end}.sheet-metrics span{font-size:.72rem}.sheet-dropzone{height:calc(min(640px,100svh - 150px));min-height:0;padding:10px}.sheet-canvas{min-height:0}.sheet-status{gap:4px;display:grid}}@media (width<=760px){.workspace__topbar-actions{flex-direction:column;align-items:flex-end}.workspace__empty-actions{justify-content:stretch}.workspace__empty-actions .button{text-align:center;flex:1;width:auto}}:root{--surface:#fff;--surface-soft:#faf9f5;--surface-muted:#f1f0eb}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ink:#f4f1e9;--muted:#aaa79e;--paper:#151615;--line:#454640;--danger:#e18a79;--surface:#20211f;--surface-soft:#292a27;--surface-muted:#33342f}:root[data-theme=dark] body{background:var(--paper)}:root[data-theme=dark] .angle-option,:root[data-theme=dark] .button--secondary,:root[data-theme=dark] .controls,:root[data-theme=dark] .controls__toggle,:root[data-theme=dark] .field select,:root[data-theme=dark] .garment-custom__sample,:root[data-theme=dark] .garment-option,:root[data-theme=dark] .pattern-option,:root[data-theme=dark] .preview-card,:root[data-theme=dark] .print-size-field__input,:root[data-theme=dark] .sheet-asset,:root[data-theme=dark] .sheet-field input,:root[data-theme=dark] .sheet-input-unit,:root[data-theme=dark] .sheet-input-unit input,:root[data-theme=dark] .sheet-panel,:root[data-theme=dark] .sheet-panel select,:root[data-theme=dark] .sheet-placement,:root[data-theme=dark] .sheet-sidebar__actions select,:root[data-theme=dark] .zoom-modal__dialog{background:var(--surface);color:var(--ink)}:root[data-theme=dark] .sheet-upload{background:var(--surface-soft);color:var(--ink);border-color:#686a62}:root[data-theme=dark] .sheet-upload:hover{background:var(--surface-muted);border-color:#a4d900}:root[data-theme=dark] .sheet-asset__remove:hover{background:#3a2421}:root[data-theme=dark] .sheet-preflight__toggle:hover{background:var(--surface-soft)}:root[data-theme=dark] .sheet-fill:hover{background:var(--surface-muted);border-color:#a4d900}:root[data-theme=dark] .sheet-preflight__asset,:root[data-theme=dark] .sheet-quantity-summary--pending{background:#302d22;border-color:#77602e}:root[data-theme=dark] .sheet-quantity-summary--pending strong{color:#f0d782}:root[data-theme=dark] .sheet-preflight__asset--ready{background:#243025;border-color:#54763d}:root[data-theme=dark] .badge,:root[data-theme=dark] .sheet-count{color:#20211f}:root[data-theme=dark] .preview-card--original,:root[data-theme=dark] .sheet-dropzone,:root[data-theme=dark] .uploader{background-color:var(--surface-soft)}:root[data-theme=dark] .preview-card__canvas--dark{background:#090a09}:root[data-theme=dark] .preview-card__canvas--transparent{background-color:#111}:root[data-theme=dark] .zoom-modal__dialog .garment-preview-toggle,:root[data-theme=dark] .zoom-modal__dialog .zoom-control,:root[data-theme=dark] .zoom-modal__dialog .zoom-modal__close,:root[data-theme=dark] .zoom-modal__dialog .zoom-modal__reset{border-color:var(--line);background:var(--surface-muted);color:var(--ink)}:root[data-theme=dark] .zoom-modal__dialog .garment-preview-toggle:hover,:root[data-theme=dark] .zoom-modal__dialog .zoom-control:hover:not(:disabled),:root[data-theme=dark] .zoom-modal__dialog .zoom-modal__close:hover,:root[data-theme=dark] .zoom-modal__dialog .zoom-modal__reset:hover:not(:disabled){background:#3b3d37;border-color:#a4d900}:root[data-theme=dark] .zoom-modal__dialog .garment-preview-toggle[aria-pressed=true]{border-color:#a4d900;box-shadow:inset 0 0 0 1px #a4d900}:root[data-theme=dark] .zoom-modal__dialog .zoom-modal__range{accent-color:#a4d900}:root[data-theme=dark] .checkerboard,:root[data-theme=dark] .sheet-canvas{background-color:#171817;background-image:linear-gradient(45deg,#2b2c29 25%,#0000 0),linear-gradient(-45deg,#2b2c29 25%,#0000 0),linear-gradient(45deg,#0000 75%,#2b2c29 0),linear-gradient(-45deg,#0000 75%,#2b2c29 0)}:root[data-theme=dark] input,:root[data-theme=dark] select{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=dark] .button--primary{color:#151615;background:#f4f1e9}:root[data-theme=dark] .button--primary:hover:not(:disabled){background:#d8d5ca}:root[data-theme=dark] .general-settings--inline .general-settings__logout{background:var(--surface-muted);color:#b8cc78}:root[data-theme=dark] .general-settings--inline .general-settings__logout:hover{color:#c8dc8a;background:#3b3d37}.page-header{padding-right:80px}body.general-settings-open{overflow:hidden}.general-settings__trigger{appearance:none;border-radius:50%;place-items:center;width:38px;height:38px;text-decoration:none;transition:transform .2s,border-color .2s,background .2s;display:grid;right:24px}.general-settings__logout,.general-settings__trigger{z-index:1100;border:1px solid var(--line);background:var(--surface);color:var(--ink);cursor:pointer;position:fixed;top:18px;box-shadow:0 4px 14px #00000014}.general-settings__logout{border-radius:999px;align-items:center;gap:7px;min-height:38px;padding:0 13px;font-size:.75rem;font-weight:600;display:inline-flex;right:72px}.general-settings__logout:hover{border-color:var(--danger);color:var(--danger)}.general-settings__profile-wrap{display:inline-flex;position:relative}.general-settings__profile{border:1px solid var(--line);background:var(--surface);width:38px;height:38px;color:var(--ink);cursor:pointer;border-radius:50%;place-items:center;transition:border-color .2s,background .2s;display:grid;box-shadow:0 4px 14px #00000014}.general-settings__profile:hover{background:var(--surface-soft);border-color:#83b900}.general-settings__profile:focus-visible{outline-offset:3px;outline:2px solid #83b900}.general-settings__profile--pro,.general-settings__profile--pro_max{isolation:isolate;border-color:#0000;position:relative}.general-settings__profile--pro:before,.general-settings__profile--pro_max:before{z-index:-2;border-radius:inherit;content:"";animation:9s linear infinite account-plan-ring;position:absolute;inset:-3px}.general-settings__profile--pro:after,.general-settings__profile--pro_max:after{z-index:-1;border-radius:inherit;background:var(--surface);content:"";position:absolute;inset:1px}.general-settings__profile--pro:before{background:conic-gradient(from 20deg,#32d9ce,#4676ff,#a855f7,#4bd381,#32d9ce);box-shadow:0 0 11px #5b70ff5c}.general-settings__profile--pro_max:before{background:conic-gradient(from 20deg,#fff2a8,#d69b2d,#fff6c7,#b97719,#f3cf5b,#fff2a8);box-shadow:0 0 11px #deaa3561}@keyframes account-plan-ring{to{transform:rotate(1turn)}}.general-settings__profile-menu{z-index:1110;border:1px solid var(--line);background:var(--surface);width:190px;color:var(--ink);gap:6px;padding:10px;display:grid;position:absolute;top:calc(100% + 10px);right:0;box-shadow:0 12px 28px #00000024}.general-settings__profile-menu p{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;margin:0 4px 3px;font-family:DM Mono,monospace;font-size:.65rem}.general-settings__profile-menu .general-settings__profile-name{color:var(--ink);letter-spacing:0;text-overflow:ellipsis;text-transform:none;white-space:nowrap;margin:0 4px 2px;font-family:Space Grotesk,sans-serif;font-size:.78rem;font-weight:600;overflow:hidden}.profile-picker__library-link{border:1px solid var(--line);min-height:38px;color:var(--ink);border-radius:999px;justify-content:center;align-items:center;gap:7px;margin-top:9px;padding:8px 12px;font-size:.75rem;font-weight:600;display:inline-flex}.profile-picker__library-link:hover{background:var(--surface-soft);border-color:#83b900}.general-settings__profile-status{justify-content:space-between;align-items:center;gap:8px;display:flex}.general-settings__profile-status strong{color:#627533;font-size:.6rem}.general-settings__profile-link{width:100%;color:var(--ink);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:4px;align-items:center;gap:8px;padding:9px 8px;font-size:.78rem;font-weight:600;display:inline-flex}.general-settings__profile-link:hover{background:var(--surface-soft)}.general-settings__trigger:hover{border-color:#83b900;transform:none}.general-settings__trigger:focus-visible{outline-offset:3px;outline:2px solid #83b900}.general-settings__trigger svg{fill:currentColor;width:19px;height:19px}.general-settings--inline{flex:none;align-items:center;gap:8px;display:inline-flex}.general-settings--account-after-settings .general-settings__logout{order:3}.general-settings--account-after-settings .general-settings__trigger{order:2}.general-settings--account-after-settings .general-settings__profile-wrap{order:3}.general-settings--inline .general-settings__trigger{width:38px;height:38px;box-shadow:none;position:static}.general-settings--inline .general-settings__logout{background:var(--surface-muted);color:#627533;min-height:38px;box-shadow:none;border-color:#0000;position:static}.general-settings--inline .general-settings__logout:hover{color:#627533;background:#eff2d6;border-color:#0000}.general-settings-modal{z-index:1200;background:#0f0f0ead;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.general-settings-modal__dialog{border:1px solid var(--line);background:var(--surface);width:min(460px,100%);color:var(--ink);box-shadow:0 24px 70px #0000005c}.general-settings-modal__header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:18px;padding:22px 24px;display:flex}.general-settings-modal__header .eyebrow{margin-bottom:6px}.general-settings-modal__header h2{margin:0;font-size:1.1rem}.general-settings-modal__close{border:1px solid var(--line);width:32px;height:32px;color:var(--ink);cursor:pointer;background:0 0;border-radius:50%;place-items:center;font-size:1.35rem;line-height:1;display:grid}.general-settings-modal__body{padding:24px}.theme-picker{border:0;gap:8px;margin:0;padding:0;display:grid}.profile-picker{border:0;border-bottom:1px solid var(--line);gap:9px;margin:0 0 24px;padding:0 0 22px;display:grid}.profile-picker legend{color:var(--ink);font-size:.9rem;font-weight:600}.profile-picker>p{color:var(--muted);margin:0 0 3px;font-size:.8rem}.profile-picker label{color:var(--ink);gap:5px;font-size:.75rem;font-weight:600;display:grid}.profile-picker input{border:1px solid var(--line);background:var(--surface-soft);width:100%;min-height:40px;color:var(--ink);border-radius:4px;padding:8px 10px}.profile-picker input:focus{outline-offset:-1px;outline:2px solid #83b900}.profile-picker__avatar-note{align-items:center;gap:6px;display:flex;font-size:.7rem!important}.profile-picker__message{color:#4a652c!important;font-size:.72rem!important}.profile-picker__message--error{color:var(--danger)!important}.profile-picker__save{border:1px solid var(--ink);background:var(--ink);min-height:38px;color:var(--paper);cursor:pointer;border-radius:4px;font-size:.76rem;font-weight:600}.profile-picker__save:disabled{cursor:wait;opacity:.65}.theme-picker legend{color:var(--ink);font-size:.9rem;font-weight:600}.theme-picker>p{color:var(--muted);margin:0 0 10px;font-size:.8rem}.theme-picker__options{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.theme-picker__option{border:1px solid var(--line);background:var(--surface);min-height:68px;color:var(--ink);cursor:pointer;text-align:left;border-radius:6px;align-items:center;gap:12px;padding:12px;display:flex}.theme-picker__option--selected,.theme-picker__option:hover{border-color:#83b900;box-shadow:inset 0 0 0 1px #83b900}.theme-picker__option>span:last-child{gap:3px;display:grid}.theme-picker__option small{color:var(--muted);font-size:.7rem}.theme-picker__swatch{border:1px solid var(--line);border-radius:50%;flex:none;width:30px;height:30px}.theme-picker__swatch--light{background:#f5f3ee}.theme-picker__swatch--dark{background:#151615}@media (width<=600px){.general-settings__trigger{top:12px;right:16px}.general-settings__logout{min-height:36px;padding:0 9px;font-size:.68rem;top:12px;right:62px}.page-header{padding-right:60px}.general-settings--inline .general-settings__profile,.general-settings--inline .general-settings__trigger{width:36px;height:36px}.general-settings--inline .general-settings__logout{min-height:36px}.general-settings-modal{padding:16px}.general-settings-modal__body,.general-settings-modal__header{padding:18px}.theme-picker__options{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.general-settings__profile--pro:before,.general-settings__profile--pro_max:before{animation:none}}[class*=iconify]{vertical-align:middle;flex:none}.sheet-remove,.sheet-upload,.zoom-modal__reset{justify-content:center;align-items:center;gap:7px;display:inline-flex}.hero--with-video{grid-template-columns:minmax(0,.96fr) minmax(0,1.04fr);gap:calc(clamp(42px,6vw,82px))}.hero-video-showcase{z-index:0;width:121%;min-width:0;max-width:720px;margin:0;padding:20px;position:relative}@media (width>=1200px){.hero-video-showcase{margin-left:-122px}}.hero-video-showcase:after,.hero-video-showcase:before{z-index:-1;content:"";pointer-events:none;position:absolute}.hero-video-showcase:before{filter:blur(18px);background:radial-gradient(circle at 22% 32%,#84915b5c,#0000 0 29%),radial-gradient(circle at 79% 70%,#5a6d3e45,#0000 0 25%);inset:-12% -16%}.hero-video-showcase:after{aspect-ratio:1;border:1px solid #84915b8a;border-radius:50%;width:42%;top:-5%;right:-7%;box-shadow:0 0 0 18px #84915b1a,0 0 50px #84915b38}.hero-video-showcase__screen{transform:perspective(1200px) rotateX(var(--video-tilt-x,0deg)) rotateY(var(--video-tilt-y,0deg));transform-style:preserve-3d;will-change:transform;background:#0d100c;border:1px solid #30362b;border-radius:16px;transition:transform .22s ease-out,box-shadow .22s ease-out;position:relative;overflow:hidden;box-shadow:0 24px 60px #1f271838,inset 0 3px #fff3}.hero-video-showcase:hover .hero-video-showcase__screen{box-shadow:0 30px 70px #2c421e47,inset 0 3px #ffffff38}.hero-video-showcase__bar{color:#d8dfce;letter-spacing:.03em;border-bottom:1px solid #30362b;align-items:center;gap:10px;min-height:42px;padding:0 14px;font-family:DM Mono,monospace;font-size:.66rem;display:flex}.hero-video-showcase__dots{gap:4px;display:inline-flex}.hero-video-showcase__dots i{background:#84915b;border-radius:50%;width:7px;height:7px}.hero-video-showcase__dots i:nth-child(2){opacity:.62}.hero-video-showcase__dots i:nth-child(3){opacity:.32}.hero-video-showcase__status{color:#b9d97b;text-transform:uppercase;margin-left:auto}.hero-video-showcase__video{aspect-ratio:16/10;-o-object-fit:contain;object-fit:contain;background:#050605;width:100%;display:block}.hero-video-showcase__expand{color:#f4f1e9;cursor:pointer;opacity:0;background:#080b08b8;border:1px solid #d8dfce8c;border-radius:9px;place-items:center;width:34px;height:34px;transition:opacity .18s,background .18s,transform .18s;display:grid;position:absolute;bottom:12px;right:12px}.hero-video-showcase:focus-within .hero-video-showcase__expand,.hero-video-showcase:hover .hero-video-showcase__expand{opacity:1}.hero-video-showcase__expand:focus-visible,.hero-video-showcase__expand:hover{background:#1b2517;border-color:#b9d97b;outline:none;transform:scale(1.06)}.hero-video-showcase figcaption{color:var(--muted);margin:13px 3px 0;font-family:DM Mono,monospace;font-size:.68rem;line-height:1.45}@media (width<=760px){.hero--with-video{gap:28px}.hero-video-showcase{width:100%;max-width:580px;padding:10px}.hero-video-showcase__bar{min-height:36px;font-size:.58rem}.hero-video-showcase__video{aspect-ratio:16/10}}@media (prefers-reduced-motion:reduce){.hero-video-showcase__screen{transition:none}}.auth-page{width:min(1440px,100%);min-height:100svh;margin:0 auto;padding:0 calc(clamp(24px,4vw,64px))}.auth-page__header{justify-content:space-between;align-items:center;min-height:78px;padding-right:72px;display:flex}.auth-page__back{color:var(--ink);align-items:center;gap:8px;font-size:.86rem;font-weight:500;display:inline-flex}.auth-page__back:hover{color:#71843e}.auth-layout{grid-template-columns:minmax(0,1.12fr) minmax(360px,.88fr);align-items:center;gap:calc(clamp(28px,6vw,96px));height:calc(100svh - 78px);min-height:0;padding:calc(clamp(12px,2vw,24px)) 0;display:grid}.auth-showcase{border:1px solid var(--line);isolation:isolate;background:#e6e8d6;grid-template-rows:auto minmax(0,1fr) auto;align-content:stretch;min-width:0;height:100%;min-height:0;padding:calc(clamp(24px,3vw,46px));display:grid;position:relative;overflow:hidden}.auth-showcase:after,.auth-showcase:before{z-index:-1;content:"";pointer-events:none;position:absolute}.auth-showcase:before{aspect-ratio:1;border:1px solid #71843e66;border-radius:50%;width:calc(min(38vw,480px));top:13%;right:-16%;box-shadow:0 0 0 22px #71843e1f,0 0 70px #71843e29}.auth-showcase:after{aspect-ratio:1;border:1px solid #71843e42;border-radius:50%;width:44%;bottom:-30%;left:-15%}.auth-showcase__copy{max-width:450px;margin-bottom:calc(clamp(12px,1.8vw,22px))}.auth-showcase__copy .eyebrow{color:#687449}.auth-showcase__copy h1{color:#171a15;letter-spacing:-.065em;max-width:440px;margin:0;font-size:calc(clamp(1.55rem,2.35vw,2.45rem));line-height:1}.auth-showcase__copy h1 em{color:#71843e}.auth-screen{perspective:1200px;place-self:center;width:min(100%,730px);min-height:0;margin:0}.auth-screen__frame{transform:rotateX(var(--auth-tilt-x,0deg)) rotateY(var(--auth-tilt-y,0deg));transform-style:preserve-3d;will-change:transform;background:#0d100c;border:1px solid #30362b;border-radius:14px;transition:transform .22s ease-out,box-shadow .22s ease-out;overflow:hidden;box-shadow:0 26px 58px #232d1845,inset 0 2px #ffffff29}.auth-screen:hover .auth-screen__frame{box-shadow:0 34px 70px #232d1857,inset 0 2px #ffffff2e}.auth-screen__bar{color:#d8dfce;letter-spacing:.035em;border-bottom:1px solid #30362b;align-items:center;gap:9px;min-height:38px;padding:0 13px;font-family:DM Mono,monospace;font-size:.62rem;display:flex}.auth-screen__dots{gap:4px;display:inline-flex}.auth-screen__dots i{background:#84915b;border-radius:50%;width:7px;height:7px}.auth-screen__dots i:nth-child(2){opacity:.62}.auth-screen__dots i:nth-child(3){opacity:.32}.auth-screen__theme{color:#b9d97b;text-transform:uppercase;margin-left:auto}.auth-screen__viewport{aspect-ratio:16/10;background:#11130f;place-items:center;display:grid}.auth-screen__viewport video{-o-object-fit:contain;object-fit:contain;-o-object-position:center;object-position:center;width:100%;height:100%;display:block}.auth-screen__fallback{color:#d8dfce;justify-items:center;gap:10px;font-size:.8rem;display:grid}.auth-screen figcaption{color:#555c4c;gap:4px;margin:13px 3px 0;font-family:DM Mono,monospace;font-size:.68rem;line-height:1.45;display:grid}.auth-screen figcaption strong{color:#354026;font-weight:500}.auth-showcase__tabs{flex-wrap:wrap;gap:8px;margin-top:16px;display:flex}.auth-showcase__tabs button{color:#4c5443;cursor:pointer;background:#ffffff40;border:1px solid #47503642;border-radius:999px;min-height:30px;padding:5px 9px;font-family:DM Mono,monospace;font-size:.62rem;transition:background .18s,color .18s,border-color .18s}.auth-showcase__tab--active,.auth-showcase__tabs button:hover{color:#fff;background:#71843e;border-color:#71843e}.auth-card{border:1px solid var(--line);background:var(--surface);align-self:center;width:min(100%,430px);max-height:calc(100svh - 110px);padding:calc(clamp(26px,3.2vw,44px));box-shadow:0 22px 60px #1b1f1714}.auth-card .eyebrow{margin-bottom:10px}.auth-card h2{max-width:360px;color:var(--ink);letter-spacing:-.06em;margin:0;font-size:calc(clamp(1.8rem,3vw,2.55rem));line-height:1}.auth-card__lead{color:var(--muted);margin:14px 0 30px;font-size:.9rem;line-height:1.55}.auth-form{gap:17px;display:grid}.auth-field{color:var(--ink);gap:7px;font-size:.78rem;font-weight:600;display:grid}.auth-field__control{border:1px solid var(--line);background:var(--surface-soft);min-height:47px;color:var(--muted);align-items:center;transition:border-color .18s,box-shadow .18s,background .18s;display:flex}.auth-field__control:focus-within{background:var(--surface);border-color:#71843e;box-shadow:0 0 0 3px #71843e29}.auth-field__control>svg{flex:none;margin-left:13px}.auth-field input{width:100%;min-width:0;height:45px;color:var(--ink);background:0 0;border:0;outline:0;padding:0 11px;font-size:.86rem}.auth-field input::placeholder{color:color-mix(in srgb,var(--muted) 72%,transparent)}.auth-field--invalid .auth-field__control{border-color:var(--danger);box-shadow:0 0 0 3px color-mix(in srgb,var(--danger) 12%,transparent)}.auth-field small{color:var(--danger);font-size:.7rem;font-weight:500;line-height:1.35}.auth-field__reveal{width:42px;height:42px;color:var(--muted);cursor:pointer;background:0 0;border:0;flex:none;place-items:center;display:grid}.auth-field__reveal:hover{color:var(--ink)}.auth-form__options{color:var(--muted);justify-content:space-between;align-items:center;gap:12px;margin-top:-2px;font-size:.72rem;display:flex}.auth-card__switch a,.auth-form__options>a{color:#627533;font-weight:600}.auth-card__switch a:hover,.auth-form__options>a:hover{text-underline-offset:3px;text-decoration:underline}.auth-check{cursor:pointer;align-items:center;gap:7px;display:inline-flex}.auth-check input{accent-color:#71843e;width:15px;height:15px;margin:0}.auth-submit{border:1px solid var(--ink);background:var(--ink);min-height:48px;color:var(--paper);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;gap:9px;margin-top:3px;font-size:.85rem;font-weight:600;transition:background .18s,transform .18s;display:inline-flex}.auth-submit:hover:not(:disabled){background:#35352f;transform:translateY(-1px)}.auth-submit:disabled{cursor:wait;opacity:.75}.auth-submit__spinner{border:2px solid #fff6;border-top-color:#fff;border-radius:50%;width:15px;height:15px;animation:.7s linear infinite auth-spin}.auth-form__notice{color:#4a652c;background:#f5faef;border:1px solid #b9d99c;gap:8px;margin:0;padding:10px;font-size:.73rem;line-height:1.4;display:flex}.auth-form__notice--warning{color:#815b13;background:#fff7e6;border-color:#e3c98d}.auth-form__notice--error{color:#9e4131;background:#fff2ef;border-color:#e1aaa0}.auth-card__switch{color:var(--muted);text-align:center;margin:24px 0 0;font-size:.78rem}.auth-card__switch a{align-items:center;gap:5px;display:inline-flex}.auth-card__privacy{color:var(--muted);text-align:center;justify-content:center;align-items:center;gap:7px;margin:28px 0 0;font-family:DM Mono,monospace;font-size:.61rem;line-height:1.4;display:flex}:root[data-theme=dark] .auth-showcase{background:#20231e}:root[data-theme=dark] .auth-showcase:before{border-color:#a9c3676b;box-shadow:0 0 0 22px #a9c36714,0 0 70px #a9c36724}:root[data-theme=dark] .auth-showcase:after{border-color:#a9c36733}:root[data-theme=dark] .auth-showcase__copy h1{color:var(--ink)}:root[data-theme=dark] .auth-screen figcaption{color:var(--muted)}:root[data-theme=dark] .auth-screen figcaption strong{color:#c3d593}:root[data-theme=dark] .auth-showcase__tabs button{color:var(--muted);background:#2b2e29;border-color:#52574c}:root[data-theme=dark] .auth-showcase__tab--active,:root[data-theme=dark] .auth-showcase__tabs button:hover{color:#fff;background:#71843e;border-color:#a4d900}:root[data-theme=dark] .auth-card{background:var(--surface);box-shadow:0 22px 60px #0000003d}:root[data-theme=dark] .auth-field__control{background:var(--surface-soft)}:root[data-theme=dark] .auth-field__control:focus-within{background:var(--surface)}:root[data-theme=dark] .auth-submit{color:#151615;background:#f4f1e9;border-color:#f4f1e9}:root[data-theme=dark] .auth-submit:hover:not(:disabled){background:#d8d5ca}:root[data-theme=dark] .auth-submit__spinner{border-color:#151615 #1516154d #1516154d}:root[data-theme=dark] .auth-form__notice{color:#c9dfb0;background:#243025;border-color:#54763d}:root[data-theme=dark] .auth-form__notice--warning{color:#f2ce8c;background:#302b20;border-color:#80652d}:root[data-theme=dark] .auth-form__notice--error{color:#f1afa2;background:#332321;border-color:#8f4d43}@keyframes auth-spin{to{transform:rotate(1turn)}}@media (width<=960px){.auth-page{padding:0 24px 42px}.auth-page__header{min-height:76px}.auth-layout{grid-template-columns:1fr;gap:22px;height:auto;min-height:auto;padding-top:20px}.auth-card{order:-1;justify-self:center}.auth-showcase{min-height:0;padding:28px}.auth-showcase__copy{align-items:baseline;gap:14px;max-width:none;margin-bottom:20px;display:flex}.auth-showcase__copy .eyebrow{margin:0}.auth-showcase__copy h1{font-size:1.35rem}.auth-screen{max-width:650px}}@media (width<=600px){.auth-page{padding:0 18px 32px}.auth-page__header{min-height:68px;padding-right:58px}.auth-page__back{font-size:.76rem}.auth-card{width:100%;padding:28px 22px}.auth-card__lead{margin-bottom:24px}.auth-showcase{display:none}.auth-form__options{flex-direction:column;align-items:flex-start}}@media (width>=961px) and (height<=820px){.auth-page__header{min-height:64px}.auth-layout{height:calc(100svh - 64px);padding:10px 0}.auth-showcase{padding:20px 26px}.auth-showcase__copy{margin-bottom:14px}.auth-showcase__copy h1{font-size:calc(clamp(1.35rem,2.2vw,1.85rem))}.auth-screen__bar{min-height:32px}.auth-screen figcaption{margin-top:8px}.auth-showcase__tabs{margin-top:10px}.auth-card{max-height:calc(100svh - 84px);padding:24px 30px}.auth-card__lead{margin:10px 0 18px}.auth-form{gap:12px}.auth-field{gap:5px}.auth-field input,.auth-field__control{height:40px;min-height:40px}.auth-submit{min-height:42px}.auth-card__privacy,.auth-card__switch{margin-top:16px}}@media (prefers-reduced-motion:reduce){.auth-screen__frame,.auth-submit{transition:none}.auth-submit__spinner{animation:none}}.library-modal-backdrop{z-index:1300;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0f100e8c;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.library-modal{border:1px solid var(--line);background:var(--surface,#fff);gap:16px;width:min(100%,450px);padding:24px;display:grid;box-shadow:0 24px 70px #00000038}.library-modal h2{letter-spacing:-.03em;margin:2px 0 0;font-size:1.35rem}.library-modal>p{color:var(--muted);margin:-4px 0 0;font-size:.82rem;line-height:1.5}.library-modal__header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.library-icon-button{border:1px solid var(--line);width:32px;height:32px;color:var(--ink);cursor:pointer;background:0 0;border-radius:50%;flex:none;place-items:center;padding:0;display:grid}.library-field{color:var(--ink);gap:7px;font-size:.78rem;font-weight:600;display:grid}.library-create-folder input,.library-field input,.library-field select{border:1px solid var(--line);background:var(--surface,#fff);width:100%;min-height:42px;color:var(--ink);font:inherit;border-radius:4px;padding:9px 11px;font-weight:400}.library-create-folder{grid-template-columns:minmax(0,1fr) auto;gap:8px;display:grid}.library-text-button{color:#627c1f;cursor:pointer;background:0 0;border:0;justify-self:start;align-items:center;gap:6px;padding:0;font-size:.76rem;font-weight:600;display:inline-flex}.library-modal__actions{justify-content:flex-end;gap:10px;padding-top:4px;display:flex}.library-modal__actions .button{min-height:40px}.library-modal--browser{width:min(100%,720px)}.library-browser__filters{grid-template-columns:minmax(180px,.8fr) minmax(0,1.2fr);gap:12px;display:grid}.library-folder-filter{grid-template-columns:minmax(0,1fr) auto;align-items:stretch;gap:6px;display:grid}.library-folder-filter select{min-width:0}.library-folder-filter__actions{gap:6px;display:inline-flex}.library-search{align-items:center;display:flex;position:relative}.library-search>svg{color:var(--muted);pointer-events:none;position:absolute;left:11px}.library-search input{padding-left:34px}.library-list{gap:7px;max-height:240px;display:grid;overflow-y:auto}.library-list--browser{max-height:calc(min(42vh,360px));padding-right:2px}.library-item{border:1px solid var(--line);background:var(--surface,#fff);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px;display:grid}.library-assign-control,.library-item__actions{align-items:center;gap:6px;display:inline-flex}.library-assign-control select{background:var(--surface,#fff);width:calc(min(150px,20vw));min-height:32px;color:var(--ink);font:inherit;border:1px solid #71843e;border-radius:4px;padding:5px 25px 5px 8px;font-size:.69rem}@keyframes library-spin{to{transform:rotate(1turn)}}.library-item small,.library-item strong{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.library-item strong{font-size:.74rem}.library-item small{color:var(--muted);margin-top:3px;font-size:.66rem}.library-item .button{min-height:32px;padding:6px 8px;font-size:.68rem}.library-delete-button{border:1px solid var(--line);width:32px;min-height:32px;color:var(--muted);cursor:pointer;background:0 0;border-radius:4px;flex:none;place-items:center;padding:0;display:inline-grid}.library-delete-button:hover:not(:disabled){color:#b64a36;background:#fff2ee;border-color:#b64a36}.library-delete-button:disabled{cursor:not-allowed;opacity:.55}.library-icon-action{border:1px solid var(--line);width:32px;min-height:32px;color:var(--muted);cursor:pointer;background:0 0;border-radius:4px;flex:none;place-items:center;padding:0;display:inline-grid}.library-icon-action:hover:not(:disabled){color:#627c1f;background:#eff2d6;border-color:#71843e}.library-confirm-backdrop{z-index:2;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f100e75;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.library-confirm-modal{border:1px solid var(--line);background:var(--surface);gap:12px;width:min(100%,430px);padding:28px;display:grid;box-shadow:0 26px 80px #1b1f173d}.library-confirm-modal__icon{color:#b64a36;background:#fff2ee;border:1px solid #b64a3647;border-radius:50%;place-items:center;width:42px;height:42px;display:grid}.library-confirm-modal h2{letter-spacing:-.035em;margin:0;font-size:1.4rem}.library-confirm-modal__message{color:var(--muted);margin:0;font-size:.85rem;line-height:1.55}.library-confirm-modal__message strong{color:var(--ink);font-weight:650}.library-confirm-modal__notice{color:#8d3c2c;background:#fff8f5;border:1px solid #b64a363d;align-items:flex-start;gap:8px;padding:11px 12px;font-size:.74rem;line-height:1.45;display:flex}.library-confirm-modal__actions{justify-content:flex-end;gap:9px;padding-top:7px;display:flex}.library-confirm-modal__actions .button{white-space:nowrap;gap:7px;min-height:36px;padding:8px 13px;font-size:.76rem}.library-confirm-modal__delete{color:#fff;background:#b64a36;border-color:#b64a36}.library-confirm-modal__delete:hover:not(:disabled){background:#963b2c;border-color:#963b2c}:root[data-theme=dark] .library-confirm-modal__icon{background:#b64a3624}:root[data-theme=dark] .library-confirm-modal__notice{color:#f1a08d;background:#b64a361f}.library-empty{color:var(--muted);font-size:.75rem;line-height:1.45}.sheet-upload--library{background:0 0;border-style:solid}.sheet-upload--library:hover{background:#eff2d6;border-color:#83b900}.sheet-dropzone__actions{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}@media (width<=600px){.library-modal{padding:20px}.library-confirm-modal__actions,.library-modal__actions{grid-template-columns:1fr;display:grid}.library-browser__filters,.library-item{grid-template-columns:1fr}.sheet-dropzone__actions{width:100%;display:grid}.library-item__actions{flex-wrap:wrap}.library-assign-control select{width:calc(min(180px,48vw))}}.workspace__topbar{align-items:flex-start;margin-bottom:16px}.workspace__topbar-actions{flex-wrap:wrap;gap:8px}.workspace__topbar-actions .button{gap:7px;min-height:36px;padding:8px 12px;font-size:.78rem;line-height:1.15}.workspace__topbar-actions .button svg{flex:none}.preview-grid{grid-template-columns:minmax(210px,.76fr) minmax(0,1.24fr);gap:16px}.preview-card--original .preview-card__canvas{min-height:260px;padding:16px}.preview-card--original .preview-card__canvas img{max-height:224px}.preview-card--result .preview-card__canvas{min-height:430px}.preview-card--result .preview-card__zoom-trigger{min-height:382px;padding:18px}.preview-card--result .preview-card__zoom-trigger img,.preview-card__canvas img,.preview-card__canvas--dark img{max-height:400px}.preview-card__heading{min-height:48px;padding:11px 14px;font-size:.68rem}.preview-card__canvas{min-height:300px;padding:18px}.preview-card__zoom-hint{bottom:12px;right:12px}@media (width<=1100px){.preview-card--original .preview-card__canvas{min-height:240px}.preview-card--result .preview-card__canvas{min-height:390px}.preview-card--result .preview-card__zoom-trigger{min-height:342px}}@media (width<=760px){.workspace__topbar-actions{width:100%}.workspace__topbar-actions .button{flex:auto}.preview-card--result .preview-card__canvas{min-height:340px}.preview-card--result .preview-card__zoom-trigger{min-height:292px}}.billing-page{padding-bottom:80px;position:relative}.billing-hero{max-width:780px;padding:64px 0 40px}.billing-hero h1{letter-spacing:-.07em;margin:0;font-size:calc(clamp(2.8rem,6vw,5.5rem));line-height:.94}.billing-hero>p:last-child{max-width:660px;color:var(--muted);margin:24px 0 0;font-size:1.1rem;line-height:1.6}.billing-notice{color:#4d6232;background:#f2f7e7;border:1px solid #b9c890;margin:0 0 24px;padding:13px 16px;line-height:1.45}.billing-notice--error{color:var(--danger);background:#fff4f1;border-color:#e1b6ab}.billing-current-plan{background:#fafcf2;border:1px solid #c9d38e;grid-template-columns:minmax(160px,.8fr) minmax(0,2fr) auto;align-items:center;gap:28px;margin-bottom:28px;padding:22px 24px;display:grid}.billing-current-plan h2{margin:0;font-size:1.4rem}.billing-usage{color:var(--muted);flex-wrap:wrap;gap:12px 20px;font-size:.82rem;display:flex}.billing-usage span{gap:3px;display:grid}.billing-usage strong{color:var(--ink);font-family:DM Mono,monospace;font-size:.76rem}.billing-plan-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.billing-plan{border:1px solid var(--line);background:#fff;flex-direction:column;min-height:470px;padding:28px;display:flex;position:relative}.billing-plan--featured{border:2px solid #84915b;box-shadow:10px 10px #e8ebd2}.billing-plan__tag{color:#fff;background:#84915b;border-radius:999px;margin:0;padding:5px 9px;font-size:.72rem;font-weight:700;position:absolute;top:-13px;right:20px}.billing-plan h2{letter-spacing:-.04em;margin:0;font-size:1.75rem}.billing-plan__price{margin-top:18px;font-family:DM Mono,monospace;font-size:1.08rem;display:block}.billing-plan__description{min-height:50px;color:var(--muted);line-height:1.45}.billing-plan ul{color:#44433f;gap:12px;margin:16px 0 28px;padding:0;font-size:.91rem;line-height:1.35;list-style:none;display:grid}.billing-plan li{align-items:flex-start;gap:9px;display:flex}.billing-plan li .icon{color:#71843e;flex:none}.billing-plan .button{width:100%;margin-top:auto}.billing-ai-credits{border:1px solid var(--line);background:var(--surface-soft);grid-template-columns:minmax(220px,.8fr) minmax(0,1.2fr);gap:26px;margin-top:44px;padding:28px;display:grid}.billing-ai-credits__intro h2{letter-spacing:-.055em;max-width:430px;margin:0;font-size:calc(clamp(1.7rem,3vw,2.5rem));line-height:1}.billing-ai-credits__intro>p:last-child{max-width:480px;color:var(--muted);margin:14px 0 0;font-size:.9rem;line-height:1.5}.billing-ai-credits__grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:10px;display:grid}.billing-ai-credit-pack{border:1px solid var(--line);background:var(--surface,#fff);flex-direction:column;padding:17px;display:flex}.billing-ai-credit-pack>span{color:#64763d;text-transform:uppercase;font-family:DM Mono,monospace;font-size:.67rem}.billing-ai-credit-pack>strong{margin-top:13px;font-family:DM Mono,monospace;font-size:1.12rem}.billing-ai-credit-pack>p{min-height:42px;color:var(--muted);margin:11px 0 15px;font-size:.76rem;line-height:1.45}.billing-ai-credit-pack .button{width:100%;min-height:36px;padding:8px 10px;font-size:.74rem}.billing-footnote{max-width:760px;color:var(--muted);margin:34px 0 0;font-size:.82rem;line-height:1.5}.billing-spin{animation:.8s linear infinite billing-spin}@keyframes billing-spin{to{transform:rotate(1turn)}}.plan-limit-modal{z-index:1500;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#1213119e;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.plan-limit-modal__dialog{border:1px solid var(--line);background:var(--surface,#fff);width:min(100%,430px);padding:26px;position:relative;box-shadow:0 26px 80px #00000047}.plan-limit-modal__close{border:1px solid var(--line);width:31px;height:31px;color:var(--ink);cursor:pointer;background:0 0;border-radius:50%;place-items:center;display:grid;position:absolute;top:14px;right:14px}.plan-limit-modal__close:hover{background:var(--surface-soft);border-color:#84915b}.plan-limit-modal__icon{color:#65733f;background:#f3f6df;border:1px solid #c9d38e;border-radius:50%;place-items:center;width:44px;height:44px;margin-bottom:18px;display:grid}.plan-limit-modal .eyebrow{margin-bottom:7px}.plan-limit-modal h2{letter-spacing:-.04em;max-width:300px;margin:0;font-size:1.48rem;line-height:1.05}.plan-limit-modal>p:not(.eyebrow):not(.plan-limit-modal__status){color:var(--muted);margin:13px 0 0;font-size:.88rem;line-height:1.55}.plan-limit-modal__status{color:#776227;background:#fff9e8;border:1px solid #dfd59e;align-items:center;gap:7px;margin:18px 0 0;padding:9px 10px;font-size:.74rem;font-weight:600;display:flex}.plan-limit-modal__actions{justify-content:flex-end;gap:8px;margin-top:20px;display:flex}.plan-limit-modal__actions .button{min-height:36px;padding:8px 13px;font-size:.78rem}.plan-limit-modal--guest-auth .button--primary{font-size:0}.plan-limit-modal--guest-auth .button--primary:after{content:"Iniciar sesión";font-size:.78rem}:root[data-theme=dark] .plan-limit-modal__dialog{background:var(--surface)}:root[data-theme=dark] .plan-limit-modal__icon{color:#bfce89;background:#2a3022;border-color:#63723f}:root[data-theme=dark] .plan-limit-modal__status{color:#edd78d;background:#322d1d;border-color:#766735}:root[data-theme=dark] .billing-notice{color:#d3e39b;background:#252d20;border-color:#5c6d3d}:root[data-theme=dark] .billing-notice--error{color:#f1a08d;background:#30221f;border-color:#77483f}:root[data-theme=dark] .billing-current-plan{color:var(--ink);background:#252b20;border-color:#697c43}:root[data-theme=dark] .billing-current-plan__period{color:var(--muted)}:root[data-theme=dark] .billing-plan{border-color:var(--line);background:var(--surface);color:var(--ink)}:root[data-theme=dark] .billing-plan--featured{border-color:#9aaa5b;box-shadow:10px 10px #303526}:root[data-theme=dark] .billing-plan ul{color:var(--ink)}:root[data-theme=dark] .billing-plan li .icon{color:#b8d477}:root[data-theme=dark] .billing-plan__tag{color:#151615;background:#859752}:root[data-theme=dark] .billing-ai-credit-pack>span{color:#b8d477}@media (width<=520px){.plan-limit-modal{padding:14px}.plan-limit-modal__dialog{padding:22px}.plan-limit-modal__actions{grid-template-columns:1fr;display:grid}.plan-limit-modal__actions .button{width:100%}}@media (width<=900px){.billing-ai-credits,.billing-current-plan{grid-template-columns:1fr;gap:18px}.billing-current-plan .button{justify-self:start}.billing-ai-credits__grid,.billing-plan-grid{grid-template-columns:1fr}.billing-plan{min-height:auto}}.ai-page{max-width:1240px;margin:0 auto;padding:0 32px 24px}.ai-page__header{padding:18px 0 12px}.ai-page__intro{justify-content:space-between;align-items:end;gap:24px;margin-bottom:16px;display:flex}.ai-page__intro h1{letter-spacing:-.07em;max-width:650px;margin:0;font-size:calc(clamp(2rem,3.4vw,3.35rem));line-height:.98}.ai-page__intro p:not(.eyebrow){max-width:620px;color:var(--muted);margin:10px 0 0;font-size:.92rem;line-height:1.45}.ai-generator__model,.ai-page__session{border:1px solid var(--line);color:#627533;white-space:nowrap;border-radius:999px;align-items:center;gap:7px;padding:7px 10px;font-family:DM Mono,monospace;font-size:.68rem;display:inline-flex}.ai-page__quota-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:9px;display:flex}.ai-page__upgrade{min-height:34px;padding:7px 11px;font-size:.72rem}.ai-generator{grid-template-columns:minmax(300px,.8fr) minmax(0,1.2fr);align-items:stretch;gap:20px;display:grid}.ai-generator__form,.ai-generator__preview{border:1px solid var(--line);background:var(--surface)}.ai-generator__form{gap:22px;padding:26px;display:grid}.ai-generator__form-heading{justify-content:space-between;align-items:start;gap:12px;display:flex}.ai-generator__form-heading h2{letter-spacing:-.04em;margin:0;font-size:1.45rem}.ai-field,.ai-fieldset{min-width:0;color:var(--muted);border:0;gap:9px;margin:0;padding:0;font-size:.82rem;display:grid}.ai-field>span,.ai-fieldset legend{color:var(--ink);font-weight:600}.ai-field textarea{resize:vertical;border:1px solid var(--line);background:var(--surface-soft);width:100%;min-height:130px;color:var(--ink);border-radius:5px;padding:13px;line-height:1.5}.ai-field textarea:focus{outline-offset:1px;outline:2px solid #a4d900}.ai-field small{text-align:right;color:var(--muted);font-family:DM Mono,monospace;font-size:.66rem}.ai-prompt-tools{align-items:center;gap:7px;display:flex}.ai-prompt-tools>small{margin-left:auto}.ai-reference-input{clip:rect(0,0,0,0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.ai-prompt-tool{border:1px solid var(--line);background:var(--surface);min-height:31px;color:var(--ink);cursor:pointer;font:inherit;border-radius:4px;align-items:center;gap:6px;padding:6px 9px;font-size:.68rem;font-weight:600;transition:border-color .18s,background .18s,color .18s;display:inline-flex}.ai-prompt-tool:hover:not(:disabled){background:var(--surface-soft);border-color:#84915b}.ai-prompt-tool:disabled{cursor:not-allowed;opacity:.55}.ai-prompt-tool--listening{color:#9e4131;background:#fff4f1;border-color:#a24b38}.ai-voice-status{color:#627533;align-items:center;gap:6px;margin:-2px 0 0;font-size:.7rem;line-height:1.35;display:flex}.ai-field-error{color:var(--danger);margin:0;font-size:.68rem;line-height:1.4}.ai-references{border:1px solid var(--line);background:var(--surface-soft);gap:9px;padding:12px;display:grid}.ai-references__heading{color:var(--ink);justify-content:space-between;align-items:start;gap:10px;font-size:.75rem;font-weight:600;display:flex}.ai-references__heading div{gap:2px;display:grid}.ai-references__heading small,.ai-references__heading>span{color:var(--muted);font-family:DM Mono,monospace;font-size:.62rem;font-weight:400}.ai-references__heading>span{border:1px solid var(--line);padding:3px 6px}.ai-references__empty{color:var(--muted);margin:0;font-size:.69rem;line-height:1.45}.ai-references__list{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin:0;padding:0;list-style:none;display:grid}.ai-references__list li{border:1px solid var(--line);background:var(--surface);min-width:0;position:relative;overflow:hidden}.ai-references__list img{aspect-ratio:1;-o-object-fit:cover;object-fit:cover;width:100%;display:block}.ai-references__list strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;padding:5px 6px;font-size:.6rem;display:block;overflow:hidden}.ai-references__list button{color:#fff;cursor:pointer;background:#161616bd;border:1px solid #ffffffb3;border-radius:50%;place-items:center;width:24px;height:24px;padding:0;display:grid;position:absolute;top:4px;right:4px}.ai-references__list button:hover{background:var(--danger)}.ai-color-options,.ai-ratio-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.ai-color-option,.ai-ratio-option{border:1px solid var(--line);background:var(--surface);min-height:42px;color:var(--ink);cursor:pointer;font:inherit;border-radius:5px;align-items:center;gap:8px;padding:8px 9px;font-size:.72rem;font-weight:600;display:flex}.ai-ratio-option input{opacity:0;pointer-events:none;position:absolute}.ai-color-option--selected,.ai-ratio-option--selected{color:#4f7000;border-color:#83b900;box-shadow:inset 0 0 0 1px #83b900}.ai-color-option__swatch{border:1px solid var(--line);border-radius:50%;flex:none;width:18px;height:18px}.ai-color-option__swatch--black{background:#161616;border-color:#161616}.ai-color-option__swatch--white{background:#fff}.ai-color-picker{position:relative}.ai-color-option--custom{justify-content:flex-start;width:100%}.ai-color-option--custom .iconify{margin-left:auto}.ai-color-picker__popover{z-index:10;border:1px solid var(--line);background:var(--surface);gap:12px;width:calc(min(290px,78vw));padding:14px;display:grid;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 18px 44px #1616162b}.ai-color-picker__title{color:var(--ink);justify-content:space-between;align-items:center;gap:10px;font-size:.76rem;display:flex}.ai-color-picker__title button{border:1px solid var(--line);width:26px;height:26px;color:var(--ink);cursor:pointer;background:0 0;border-radius:50%;place-items:center;padding:0;display:grid}.ai-color-picker__palette{grid-template-columns:repeat(6,minmax(0,1fr));gap:7px;display:grid}.ai-color-picker__palette button{aspect-ratio:1;cursor:pointer;border:2px solid #0000;border-radius:50%;width:100%;box-shadow:0 0 0 1px #1616162e}.ai-color-picker__palette button:hover,.ai-color-picker__swatch--selected{box-shadow:0 0 0 2px #a4d900;border-color:var(--ink)!important}.ai-color-picker__hex{color:var(--muted);grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;font-family:DM Mono,monospace;font-size:.65rem;display:grid}.ai-color-picker__hex input{border:1px solid var(--line);background:var(--surface-soft);min-width:0;height:34px;color:var(--ink);font:inherit;text-transform:uppercase;padding:6px 9px;font-size:.72rem}.ai-color-picker__footer{justify-content:space-between;align-items:center;gap:8px;display:flex}.ai-color-picker__footer .button{min-height:32px;padding:6px 9px;font-size:.66rem}.ai-ratio-option{grid-template-columns:1fr auto;gap:2px 7px;display:grid}.ai-ratio-option strong{font-size:.74rem}.ai-ratio-option small{color:var(--muted);font-family:DM Mono,monospace;font-size:.63rem}.ai-generator__submit{border:0;width:100%;min-height:46px;font-weight:600}.ai-generator__limit-cta{border:1px solid color-mix(in srgb,var(--accent) 58%,var(--line));background:color-mix(in srgb,var(--accent) 8%,var(--surface));border-radius:8px;gap:13px;padding:15px;display:grid}.ai-generator__limit-cta>div{color:var(--accent);align-items:flex-start;gap:10px;display:flex}.ai-generator__limit-cta span{color:var(--ink);gap:4px;display:grid}.ai-generator__limit-cta strong{font-size:.84rem}.ai-generator__limit-cta small{color:var(--muted);font-size:.76rem;line-height:1.45}.ai-generator__limit-cta .button{justify-self:start;width:max-content;min-height:38px;font-size:.8rem}.ai-generator__form--locked{opacity:.82}.ai-generator__form--locked .ai-references,.ai-generator__form--locked textarea{cursor:not-allowed}.ai-generator__guest-cta{border:1px solid color-mix(in srgb,var(--accent) 58%,var(--line));background:color-mix(in srgb,var(--accent) 8%,var(--surface));border-radius:8px;gap:13px;padding:15px;display:grid}.ai-generator__guest-cta>div:first-child{color:var(--accent);align-items:flex-start;gap:10px;display:flex}.ai-generator__guest-cta span{color:var(--ink);gap:4px;display:grid}.ai-generator__guest-cta strong{font-size:.84rem}.ai-generator__guest-cta small{color:var(--muted);font-size:.76rem;line-height:1.45}.ai-generator__guest-actions{flex-wrap:wrap;gap:8px;display:flex}.ai-generator__guest-actions .button{min-height:36px;padding:8px 12px;font-size:.76rem}.notice--error{align-items:center;gap:7px;margin:-4px 0 0;display:flex}.ai-generator__preview{grid-template-rows:auto minmax(0,1fr) auto auto;min-height:620px;display:grid;overflow:hidden}.ai-generator__preview--empty{place-items:center}.ai-generator__preview--generating{background:linear-gradient(145deg,color-mix(in srgb,var(--surface) 94%,#eef3e1),var(--surface));grid-template-rows:minmax(0,1fr)}.ai-generator__preview-actions,.ai-generator__preview-toolbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:15px 18px;display:flex}.ai-generator__preview-toolbar span{color:#4f7000;align-items:center;gap:7px;font-size:.78rem;font-weight:600;display:inline-flex}.ai-generator__preview-toolbar small{color:var(--muted);font-family:DM Mono,monospace;font-size:.65rem}.ai-generator__canvas{background-image:linear-gradient(45deg,#ffffff14 25%,#0000 0),linear-gradient(-45deg,#ffffff14 25%,#0000 0);background-position:0 0,0 12px;background-size:24px 24px;padding:28px}.ai-generator__canvas,.ai-generator__canvas-trigger{justify-content:center;align-items:center;width:100%;min-width:0;height:100%;min-height:0;display:flex;position:relative;overflow:hidden}.ai-generator__canvas-trigger{cursor:zoom-in;background:0 0;border:0;padding:0}.ai-generator__canvas-trigger img{-o-object-position:center;object-position:center;margin:0;display:block;position:absolute;inset:0;box-shadow:0 22px 55px #16161626;-o-object-fit:contain!important;object-fit:contain!important;width:100%!important;max-width:none!important;height:100%!important;max-height:none!important}.ai-generator__canvas-trigger:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.ai-generator__canvas-hint{color:#fff;opacity:0;pointer-events:none;background:#121212a8;border:1px solid #ffffffa6;border-radius:999px;padding:6px 9px;font-size:.68rem;transition:opacity .18s,transform .18s;position:absolute;bottom:12px;right:12px;transform:translateY(4px)}.ai-generator__canvas-trigger:focus-visible .ai-generator__canvas-hint,.ai-generator__canvas-trigger:hover .ai-generator__canvas-hint{opacity:1;transform:translateY(0)}.ai-generator__diagnosis{border-top:1px solid var(--line);background:var(--surface);min-width:0}.ai-generator__diagnosis-toggle{width:100%;min-height:42px;color:var(--ink);cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;gap:12px;padding:10px 18px;font-size:.76rem;font-weight:600;display:flex}.ai-generator__diagnosis-toggle:hover{background:color-mix(in srgb,var(--surface-soft) 65%,transparent)}.ai-generator__diagnosis-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.ai-generator__diagnosis-toggle-action,.ai-generator__diagnosis-toggle>span:first-child{align-items:center;gap:6px;display:inline-flex}.ai-generator__diagnosis-toggle-action{color:var(--muted);font-size:.66rem;font-weight:500}.ai-generator__diagnosis-body{min-width:0}.ai-generator__diagnosis-body .image-diagnosis{border-top:0}.ai-generator__preview-actions{border-top:1px solid var(--line);border-bottom:0;justify-content:flex-end}.ai-generator__preview-actions .button{padding:9px 13px;font-size:.78rem}.ai-generator__empty{max-width:260px;color:var(--muted);text-align:center;justify-items:center;gap:10px;padding:32px;display:grid}.ai-generator__empty strong{color:var(--ink);font-size:1rem}.ai-generator__empty span{font-size:.8rem;line-height:1.45}.ai-generator__generating{min-height:100%;color:var(--muted);text-align:center;isolation:isolate;align-content:center;justify-items:center;gap:10px;padding:36px;display:grid;position:relative;overflow:hidden}.ai-generator__generating:before{z-index:-2;filter:blur(25px);content:"";background:radial-gradient(circle,#add34e2e,#5fbc9f14 36%,#0000 70%);border-radius:50%;animation:4.4s ease-in-out infinite ai-aurora-breathe;position:absolute;inset:12%}.ai-generator__generating strong{color:var(--ink);font-size:1rem}.ai-generator__generating>span{max-width:270px;font-size:.79rem;line-height:1.45}.ai-generator__aurora{place-items:center;width:142px;height:142px;margin-bottom:8px;display:grid;position:relative}.ai-generator__aurora:before{content:"";border:1px solid #68883f40;border-radius:46% 54% 58% 42%;animation:7s linear infinite ai-aurora-orbit;position:absolute;inset:18px}.ai-generator__aurora-orb{filter:blur(15px);opacity:.75;mix-blend-mode:multiply;border-radius:50%;animation:5.4s ease-in-out infinite alternate ai-aurora-float;position:absolute}.ai-generator__aurora-orb--one{background:#97d04d8f;width:78px;height:78px;transform:translate(-21px,-17px)}.ai-generator__aurora-orb--two{background:#40a8976b;width:71px;height:71px;animation-delay:-1.8s;transform:translate(24px,20px)}.ai-generator__aurora-orb--three{background:#7060ba4d;width:48px;height:48px;animation-delay:-3.2s;transform:translate(29px,-26px)}.ai-generator__aurora-core{z-index:1;background:color-mix(in srgb,var(--surface) 80%,transparent);color:#687d3d;border:1px solid #fffc;border-radius:50%;place-items:center;width:52px;height:52px;animation:2.8s ease-in-out infinite ai-aurora-breathe;display:grid;position:relative;box-shadow:0 12px 30px #3f63262b}.ai-generator__aurora-spark{background:#889b52;border-radius:50%;width:4px;height:4px;animation:2.8s ease-in-out infinite ai-aurora-spark;position:absolute;box-shadow:0 0 12px 3px #889b525c}.ai-generator__aurora-spark--one{top:24px;right:27px}.ai-generator__aurora-spark--two{animation-delay:-1s;bottom:20px;left:33px}.ai-generator__aurora-spark--three{animation-delay:-1.8s;top:52px;left:13px}.ai-spin{animation:.9s linear infinite ai-spin}@keyframes ai-spin{to{transform:rotate(1turn)}}@keyframes ai-aurora-breathe{50%{opacity:.62;transform:scale(1.07)}}@keyframes ai-aurora-orbit{to{transform:rotate(1turn)}}@keyframes ai-aurora-float{to{transform:translate(18px,18px)scale(1.11)}}@keyframes ai-aurora-spark{50%{opacity:.18;transform:scale(.45)}}@media (prefers-reduced-motion:reduce){.ai-generator__aurora-core,.ai-generator__aurora-orb,.ai-generator__aurora-spark,.ai-generator__aurora:before,.ai-generator__generating:before{animation:none}}@media (width>=901px){.ai-page{min-height:100svh}.ai-generator{height:calc(min(640px,100svh - 238px));min-height:520px}.ai-generator__form{scrollbar-width:thin;min-height:0;overflow-y:auto}.ai-generator__preview{height:100%;min-height:0}}@media (width<=900px){.ai-generator{grid-template-columns:1fr}.ai-generator__preview{min-height:480px}}@media (width<=620px){.ai-page{padding:0 18px 48px}.ai-page__intro{display:block}.ai-page__quota-actions{justify-content:flex-start;margin-top:18px}.ai-color-options,.ai-ratio-options{grid-template-columns:1fr}.ai-prompt-tools{flex-wrap:wrap}.ai-prompt-tools>small{width:100%}.ai-references__list{grid-template-columns:repeat(3,minmax(0,1fr))}.ai-color-picker__popover{width:calc(min(290px,100vw - 64px));left:0;right:auto}.ai-generator__preview-actions{flex-direction:column;align-items:stretch}.ai-generator__preview-actions .button{width:100%}}.image-diagnosis{border:1px solid var(--line);background:var(--surface-soft);color:var(--muted);gap:8px;padding:12px 14px;display:grid}.preview-card--original{position:relative}.image-diagnosis--compact,.preview-card--original>.image-diagnosis{border-bottom:0;border-left:0;border-right:0}.preview-card--original:after{background:var(--line);content:"";width:30px;height:1px;position:absolute;bottom:30px;right:-36px}.preview-card--original:before{color:var(--muted);content:"→";font-size:1.35rem;line-height:1;position:absolute;bottom:22px;right:-44px}.image-diagnosis--compact{padding:9px 14px}.image-diagnosis__header{color:var(--ink);justify-content:space-between;align-items:center;gap:10px;font-size:.72rem;font-weight:600;display:flex}.image-diagnosis__header>span:first-child{align-items:center;gap:6px;display:inline-flex}.image-diagnosis small,.image-diagnosis__loading,.image-diagnosis__status{font-family:DM Mono,monospace;font-size:.62rem}.image-diagnosis__chips{flex-wrap:wrap;gap:6px;display:flex}.image-diagnosis__chip{border:1px solid var(--line);border-radius:999px;align-items:center;gap:5px;padding:4px 7px;font-size:.65rem;font-weight:600;display:inline-flex}.image-diagnosis__chip--tone{color:#6f8e2e;border-color:color-mix(in srgb,#6f8e2e 35%,var(--line));background:color-mix(in srgb,#6f8e2e 8%,var(--surface))}.image-diagnosis__chip--ok{color:#3d7f55;border-color:color-mix(in srgb,#3d7f55 35%,var(--line));background:color-mix(in srgb,#3d7f55 8%,var(--surface))}.image-diagnosis__chip--warning{color:#a06f1d;border-color:color-mix(in srgb,#a06f1d 35%,var(--line));background:color-mix(in srgb,#a06f1d 9%,var(--surface))}.image-diagnosis p{margin:0;font-size:.71rem;line-height:1.4}.image-diagnosis small{color:var(--muted);line-height:1.35}.image-diagnosis__error{color:var(--danger)}@media (width<=1100px){.preview-card--original:after,.preview-card--original:before{display:none}}.library-page{min-height:100vh}.library-page__header{padding-bottom:34px}.library-page__intro{border-bottom:1px solid var(--line);justify-content:space-between;align-items:end;gap:28px;padding:28px 0 26px;display:flex}.library-page__intro h1{letter-spacing:-.07em;max-width:700px;margin:0;font-size:calc(clamp(2rem,4vw,3.4rem));line-height:.98}.library-page__intro p:not(.eyebrow){max-width:620px;color:var(--muted);margin:18px 0 0;line-height:1.5}.library-page__identity{min-width:190px;color:var(--muted);text-align:right;gap:5px;font-family:DM Mono,monospace;font-size:.68rem;display:grid}.library-page__identity strong{color:#71843e;font-size:.8rem}.library-page__toolbar{justify-content:space-between;align-items:center;gap:16px;padding:22px 0 12px;display:flex}.library-page__filter-group,.library-page__upload-group{align-items:center;gap:9px;display:flex}.library-page__upload-group label{position:relative}.library-page__upload-group input[type=file]{clip:rect(0,0,0,0);width:1px;height:1px;position:absolute;overflow:hidden}.library-page__filter-group select,.library-page__folder-select{border:1px solid var(--line);background:var(--surface);min-height:42px;color:var(--ink);border-radius:999px;padding:8px 34px 8px 11px;font-size:.76rem}.library-page__search{align-items:center;display:flex;position:relative}.library-page__search svg{color:var(--muted);pointer-events:none;position:absolute;left:12px}.library-page__search input{border:1px solid var(--line);background:var(--surface);width:calc(min(270px,30vw));min-height:42px;color:var(--ink);border-radius:999px;padding:8px 11px 8px 35px;font-size:.76rem}.library-page__new-folder{justify-content:space-between;align-items:center;gap:15px;min-height:52px;padding-bottom:18px;display:flex}.library-page__new-folder form{gap:8px;display:flex}.library-page__new-folder input{border:1px solid var(--line);background:var(--surface);width:calc(min(230px,32vw));min-height:38px;color:var(--ink);border-radius:4px;padding:8px 10px;font-size:.76rem}.library-page__new-folder .button{min-height:38px;padding:8px 13px;font-size:.74rem}.library-page__error,.library-page__message{margin:0;font-size:.76rem}.library-page__message{color:#71843e}.library-page__error{color:var(--danger);background:#b64a3614;border:1px solid #b64a364d;padding:11px 13px}.library-page__loading{min-height:220px;color:var(--muted);justify-content:center;align-items:center;gap:10px;font-size:.86rem;display:flex}.library-spinner{border:2px solid var(--line);border-top-color:#71843e;border-radius:50%;width:18px;height:18px;animation:.75s linear infinite library-page-spin}@keyframes library-page-spin{to{transform:rotate(1turn)}}.library-page__empty{border:1px dashed var(--line);min-height:260px;color:var(--muted);text-align:center;justify-items:center;gap:8px;padding:68px 20px;display:grid}.library-page__empty h2{color:var(--ink);margin:8px 0 0;font-size:1.2rem}.library-page__empty p{margin:0;font-size:.82rem}.library-page__auth-card{border:1px solid var(--line);background:var(--surface);max-width:600px;margin:100px auto 0;padding:42px;box-shadow:0 16px 42px #00000012}.library-page__auth-card h1{letter-spacing:-.07em;margin:0;font-size:calc(clamp(2rem,5vw,3.5rem));line-height:1}.library-page__auth-card p:not(.eyebrow){color:var(--muted);margin:20px 0 26px;line-height:1.5}.library-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding-bottom:70px;display:grid}.library-card{border:1px solid var(--line);background:var(--surface);grid-template-rows:auto auto auto auto;min-width:0;display:grid;overflow:hidden}.library-card__preview{aspect-ratio:4/3;border:0;border-bottom:1px solid var(--line);background:var(--surface-soft);cursor:zoom-in;min-height:190px;padding:14px;position:relative}.library-card__preview,.library-card__preview-stage{place-items:center;width:100%;display:grid;overflow:hidden}.library-card__preview-stage{height:100%;min-height:0}.library-card__preview img{-o-object-fit:contain;object-fit:contain;width:auto;max-width:100%;height:auto;max-height:100%;display:block}.library-card__placeholder{width:100%;height:100%;color:var(--muted);place-items:center;display:grid}.library-card__preview-hint{border:1px solid color-mix(in srgb,var(--line) 70%,transparent);background:color-mix(in srgb,var(--surface) 92%,transparent);color:var(--ink);opacity:0;border-radius:999px;align-items:center;gap:5px;padding:6px 8px;font-size:.62rem;transition:opacity .16s,transform .16s;display:inline-flex;position:absolute;bottom:10px;right:10px;transform:translateY(4px)}.library-card__preview:focus-visible .library-card__preview-hint,.library-card__preview:hover .library-card__preview-hint{opacity:1;transform:translateY(0)}.library-card__preview:focus-visible{outline-offset:-2px;outline:2px solid #71843e}.library-card__body{min-width:0;padding:14px 14px 12px}.library-card__heading{justify-content:space-between;align-items:center;gap:8px;display:flex}.library-card h2{text-overflow:ellipsis;white-space:nowrap;letter-spacing:-.02em;min-width:0;margin:0;font-size:.9rem;overflow:hidden}.library-card__status{color:#71843e;text-transform:uppercase;flex:none;font-family:DM Mono,monospace;font-size:.57rem}.library-card__body p{color:var(--muted);margin:5px 0 0;font-size:.68rem;line-height:1.35}.library-card__manage{padding:0 14px 12px}.library-card__assign{color:var(--muted);gap:5px;font-size:.64rem;display:grid}.library-card__assign>span:first-child{text-transform:uppercase;letter-spacing:.05em;font-family:DM Mono,monospace}.library-card__assign-control{border:1px solid var(--line);background:var(--surface-soft);min-width:0;min-height:36px;color:var(--muted);border-radius:5px;align-items:center;gap:7px;padding:0 9px;display:flex}.library-card__assign select{width:100%;min-width:0;color:var(--ink);background:0 0;border:0;outline:0;padding:7px 22px 7px 0;font-size:.72rem}.library-card__assign-control:focus-within{border-color:#71843e;box-shadow:0 0 0 2px #71843e1f}.library-card__actions{border-top:1px solid var(--line);align-items:center;gap:7px;padding:11px 14px 14px;display:flex}.library-icon-action{border:1px solid var(--line);min-width:0;min-height:34px;color:var(--ink);cursor:pointer;background:0 0;border-radius:5px;flex:1 1 0;justify-content:center;align-items:center;gap:6px;padding:7px 9px;font-size:.68rem;display:inline-flex}.library-icon-action:hover:not(:disabled){background:var(--surface-soft);color:#71843e;border-color:#71843e}.library-icon-action--danger:hover:not(:disabled){border-color:var(--danger);color:var(--danger)}.library-icon-action:disabled{cursor:wait;opacity:.5}.is-spinning{animation:.75s linear infinite library-page-spin}@media (width<=920px){.library-page__intro{flex-direction:column;align-items:start}.library-page__identity{text-align:left}.library-page__toolbar{flex-direction:column;align-items:stretch}.library-page__filter-group{justify-content:stretch}.library-page__search{flex:1}.library-page__search input{width:100%}.library-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=600px){.library-page{padding-inline:18px}.library-page__filter-group,.library-page__new-folder,.library-page__new-folder form,.library-page__upload-group{flex-direction:column;align-items:stretch}.library-page__filter-group select,.library-page__folder-select,.library-page__new-folder input{width:100%}.library-grid{grid-template-columns:1fr}.library-page__auth-card{margin-top:50px;padding:26px}}:root[data-theme=dark] .library-card,:root[data-theme=dark] .library-page__auth-card{box-shadow:none}.billing-expiry-banner[data-v-9e47d0e9]{z-index:40;background:color-mix(in srgb,var(--surface) 92%,#f8e7b6);width:calc(min(720px,100vw - 32px));color:var(--ink);border:1px solid #d9bd72;justify-content:space-between;align-items:center;gap:18px;padding:11px 14px;display:flex;position:fixed;top:14px;left:50%;transform:translate(-50%);box-shadow:0 12px 34px #14161124}.billing-expiry-banner__copy[data-v-9e47d0e9]{grid-template-columns:auto minmax(0,1fr);align-items:start;gap:8px;font-size:.75rem;line-height:1.4;display:grid}.billing-expiry-banner__copy>svg[data-v-9e47d0e9]{color:#8a6813;margin-top:2px}.billing-expiry-banner__copy strong[data-v-9e47d0e9]{font-weight:700}.billing-expiry-banner__copy small[data-v-9e47d0e9]{color:var(--muted);grid-column:2;font-size:.68rem}.billing-expiry-banner__link[data-v-9e47d0e9]{border:1px solid var(--ink);color:var(--ink);flex:none;align-items:center;gap:5px;padding:7px 10px;font-size:.72rem;font-weight:700;text-decoration:none;display:inline-flex}.billing-expiry-banner__link[data-v-9e47d0e9]:hover{background:var(--ink);color:var(--surface)}.billing-expiry-enter-active[data-v-9e47d0e9],.billing-expiry-leave-active[data-v-9e47d0e9]{transition:opacity .2s,transform .2s}.billing-expiry-enter-from[data-v-9e47d0e9],.billing-expiry-leave-to[data-v-9e47d0e9]{opacity:0;transform:translate(-50%,-8px)}@media (width<=600px){.billing-expiry-banner[data-v-9e47d0e9]{align-items:flex-start;gap:10px;width:calc(100vw - 20px);padding:10px;top:8px}.billing-expiry-banner__link[data-v-9e47d0e9]{font-size:.68rem}.billing-expiry-banner__copy[data-v-9e47d0e9]{font-size:.7rem}}
