:root{--paper:#f8f9f7;--ink:#111827;--muted:#5f6b7a;--soft:#9aa4b2;--line:#dde4ea;--accent:#0f766e;--shadow:0 18px 42px #1f293714;--badge-shell:#d9dde5;--badge-face-shadow:inset 0 0 0 2px #fffffff2, inset 0 0 0 clamp(7px, 7.6%, 44px) #ffffffe6, inset 0 -42px 62px #0f172a33, inset 0 26px 38px #ffffff61;--badge-rim-width:clamp(8px, 9%, 56px);--badge-rim-shadow:inset 0 0 0 2px #0f172a29, inset 0 0 24px #ffffffb3, 0 0 0 clamp(3px, 3.5%, 22px) #a4acbce6, 0 0 0 clamp(6px, 6.5%, 40px) #f6f8fbfa, 0 0 0 clamp(9px, 9%, 56px) #656f809e;--badge-active-rim-shadow:inset 0 0 0 2px #0f172a38, inset 0 0 24px #ffffffb3, 0 0 0 clamp(3px, 3.5%, 22px) #a4acbcf2, 0 0 0 clamp(6px, 6.5%, 40px) #f6f8fbfa, 0 0 0 clamp(9px, 9%, 56px) #111827e0;--badge-glass:radial-gradient(circle at 50% 48%, transparent 58%, #0f172a33 75%, #0f172a6b 100%), linear-gradient(90deg, #ffffff3d, transparent 26% 74%, #0000002e);color:var(--ink);background:linear-gradient(180deg, #ffffffc7, #f8f9f7f5), var(--paper);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-width:320px;min-height:100vh;margin:0}button,input{letter-spacing:0}a,button,input{transition:border-color .18s,box-shadow .18s,transform .18s,background-color .18s,color .18s}a:focus-visible,button:focus-visible,input:focus-visible{outline-offset:3px;outline:3px solid #14b8a652}.remix-icon{color:currentColor;flex:none;width:1em;height:1em;line-height:1;display:block}.portal-card:not(.badge) .card-art,.placeholder-panel .card-art{color:#ffffffc7;box-shadow:none;background:0 0;border:0;border-radius:0;place-items:center;display:grid}.portal-card:not(.badge) .card-art:before,.portal-card:not(.badge) .card-art:after,.placeholder-panel .card-art:before,.placeholder-panel .card-art:after{content:none}.portal-card:not(.badge) .card-art>.remix-icon,.placeholder-panel .card-art>.remix-icon{filter:drop-shadow(0 0 14px #dbf4ff61);width:100%;height:100%;font-size:36px}.placeholder-panel .card-art{width:46px;height:46px;margin-bottom:16px}.reactEasyCrop_Container{-webkit-user-select:none;user-select:none;touch-action:none;cursor:move;justify-content:center;align-items:center;display:flex;position:absolute;inset:0;overflow:hidden}.reactEasyCrop_Image,.reactEasyCrop_Video{will-change:transform;max-width:unset}.reactEasyCrop_Contain{max-width:100%;max-height:100%;margin:auto;position:absolute;inset:0}.reactEasyCrop_Cover_Horizontal{width:100%;height:auto}.reactEasyCrop_Cover_Vertical{width:auto;height:100%}.reactEasyCrop_CropArea{box-sizing:border-box;color:#00000080;border:1px solid #ffffff80;position:absolute;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%);box-shadow:0 0 0 9999em}.reactEasyCrop_CropAreaRound{border-radius:50%}.reactEasyCrop_CropAreaGrid:before{content:" ";box-sizing:border-box;border:0;border-left:1px solid #ffffff80;border-right:1px solid #ffffff80;position:absolute;inset:0 33.33%}.reactEasyCrop_CropAreaGrid:after{content:" ";box-sizing:border-box;border:1px solid #ffffff80;border-left:0;border-right:0;position:absolute;inset:33.33% 0}.crop-overlay{z-index:20;background:radial-gradient(circle at 50% 46%,#ffffffa3,#eef2f7c2 42%,#cbd5e19e),#f8fafcad;place-items:center;padding:28px;animation:.18s ease-out crop-overlay-in;display:grid;position:fixed;inset:0}.crop-panel{background:linear-gradient(#fffffffa,#f8fafcf0),#ffffffe6;border:1px solid #94a3b852;border-radius:24px;justify-items:center;gap:16px;width:min(86vw,560px);min-width:0;padding:18px;animation:.24s cubic-bezier(.18,.78,.22,1) crop-panel-in;display:grid;position:relative;box-shadow:0 24px 60px #0f172a29,inset 0 1px #ffffffe0}.crop-toolbar{justify-content:space-between;align-items:center;gap:10px;width:100%;display:flex}.crop-window{aspect-ratio:1;cursor:grab;touch-action:none;contain:layout paint;background:linear-gradient(135deg,#ffffffe0,#f1f5f9a3),#f8fafc;border:1px solid #94a3b847;border-radius:20px;width:100%;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffffc2,0 14px 32px #0f172a1a}.crop-window:active{cursor:grabbing}.badge-cropper{border-radius:inherit}.badge-crop-area{color:#0f172a33;box-shadow:0 0 0 9999em,inset 0 0 0 2px #ffffffeb,inset 0 0 0 3px #0f172a29!important}.badge-crop-media{will-change:transform}.crop-close,.crop-apply{color:#111827;width:40px;height:40px;font:inherit;cursor:pointer;background:#f8fafcdb;border:1px solid #94a3b857;border-radius:50%;place-items:center;font-size:20px;font-weight:800;display:grid;box-shadow:0 10px 24px #0f172a1a}.crop-close>.remix-icon,.crop-apply>.remix-icon{width:100%;height:100%}.crop-close{order:1}.crop-apply{color:#fff;background:#111827;border-color:#111827;order:2}@keyframes crop-overlay-in{0%{opacity:0}to{opacity:1}}@keyframes crop-panel-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.badge-stage{perspective:1100px;background:radial-gradient(circle at 74% 18%,#ec489914,#0000 28%),radial-gradient(circle at 58% 82%,#14b8a614,#0000 32%),linear-gradient(135deg,#fbfcff 0%,#f6f8fb 48%,#fff 100%);grid-template-columns:clamp(168px,22vw,260px) minmax(0,1fr);display:grid;position:fixed;inset:0;overflow:hidden}.badge-hover-zone{z-index:1;aspect-ratio:1;border-radius:50%;place-items:center;width:min(68vmin,620px);padding:28px;display:grid;position:relative}.badge-list{--badge-list-size:clamp(104px, 12vw, 156px);z-index:10;-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);background:linear-gradient(#fffffff0,#f8fafcd1),#f8fafcdb;border-right:1px solid #94a3b833;width:clamp(168px,22vw,260px);height:100vh;padding:26px 20px;transition:width .28s,background-color .18s,box-shadow .18s;position:relative;box-shadow:18px 0 56px #0f172a12}.badge-list.expanded{--badge-list-size:168px;background:radial-gradient(circle at 20% 10%,#ec489912,#0000 24%),linear-gradient(#fffffffa,#f6f8fbf5);width:100vw;position:fixed;inset:0 auto 0 0}.badge-list-toggle{z-index:2;color:#111827;width:36px;height:36px;font:inherit;cursor:pointer;background:#fffffff5;border:1px solid #94a3b857;border-radius:50%;place-items:center;font-size:24px;font-weight:800;transition:transform .18s,box-shadow .18s,background-color .18s;display:grid;position:absolute;top:18px;right:-18px;box-shadow:0 12px 28px #0f172a1f}.badge-list-toggle>.remix-icon,.badge-delete>.remix-icon,.badge-download>.remix-icon,.badge-add>.remix-icon,.crop-close>.remix-icon,.crop-apply>.remix-icon{width:100%;height:100%}.badge-list-toggle:hover{background:#fff;transform:translate(1px);box-shadow:0 16px 34px #0f172a29}.badge-list.expanded .badge-list-toggle{right:22px}.badge-list-scroll{scrollbar-width:thin;scrollbar-color:#94a3b87a transparent;flex-direction:column;align-items:center;gap:18px;height:100%;padding:10px 28px 34px 6px;display:flex;overflow:visible auto}.badge-list.expanded .badge-list-scroll{grid-template-columns:repeat(auto-fill,minmax(168px,1fr));align-content:start;justify-items:center;gap:28px;padding:72px 48px 48px;display:grid}.badge-list-item{width:var(--badge-list-size);height:var(--badge-list-size);isolation:isolate;flex:none;transition:transform .22s;position:relative}.badge-list-item:hover,.badge-list-item:focus-within{transform:translateY(-4px)scale(1.015)}.badge-list.expanded .badge-list-item{width:var(--badge-list-size);height:var(--badge-list-size)}.badge-thumb,.badge-add{aspect-ratio:1;cursor:pointer;background:#fff;border-radius:50%;place-items:center;width:100%;min-width:0;height:100%;min-height:0;transition:border-color .18s,box-shadow .18s,transform .18s,background-color .18s;display:grid}.badge-thumb{background:var(--badge-shell);box-shadow:var(--badge-face-shadow), 0 14px 34px #0f172a24;border:0;position:relative;overflow:hidden}.badge-thumb:before,.badge-thumb:after{content:"";z-index:2;border-radius:inherit;pointer-events:none;position:absolute;inset:0}.badge-thumb:before{border:var(--badge-rim-width) solid #f4f7fbd1;box-shadow:var(--badge-rim-shadow)}.badge-thumb:after{background:var(--badge-glass);opacity:.92;transition:opacity .22s}.badge-thumb:hover,.badge-thumb:focus-visible{box-shadow:var(--badge-face-shadow), 0 22px 46px #0f172a2e}.badge-thumb:hover:after,.badge-thumb:focus-visible:after{opacity:.74}.badge-list-item.active .badge-thumb:before{box-shadow:var(--badge-active-rim-shadow)}.badge-thumb img{z-index:1;object-fit:cover;-webkit-user-drag:none;width:100%;height:100%;position:absolute;inset:0}.badge-delete,.badge-download{z-index:4;cursor:pointer;opacity:0;pointer-events:none;background:#fffffff5;border-radius:50%;place-items:center;width:30px;height:30px;transition:opacity .17s,transform .17s,background-color .17s,color .17s,border-color .17s;display:grid;position:absolute;right:-14px;transform:translate(6px,-50%)scale(.94);box-shadow:0 12px 24px #0f172a24}.badge-download{color:#0f766e;border:1px solid #14b8a647;font-size:18px;font-weight:900;top:calc(50% - 18px)}.badge-delete{color:#be123c;border:1px solid #f43f5e47;font-size:16px;font-weight:800;top:calc(50% + 18px)}.badge-list-item:hover .badge-delete,.badge-list-item:hover .badge-download,.badge-list-item:focus-within .badge-delete,.badge-list-item:focus-within .badge-download,.badge-delete:focus-visible,.badge-download:focus-visible{opacity:1;pointer-events:auto;transform:translateY(-50%)scale(1)}.badge-download:hover{color:#fff;background:#0f766e;border-color:#0f766e}.badge-delete:hover{background:#fff1f2}.badge-add{width:var(--badge-list-size);height:var(--badge-list-size);color:#111827c2;font:inherit;box-shadow:none;background:#ffffff8a;border:2px dashed #0f172a47;flex:none;font-size:clamp(32px,5vw,52px);line-height:1}.badge-add:hover,.badge-add:focus-visible{color:#111827;background:#ffffffe0;border-color:#1118279e;box-shadow:0 16px 38px #0f172a1a}.badge-list.expanded .badge-add{width:var(--badge-list-size);height:var(--badge-list-size)}.badge-display{--badge-display-image:none;isolation:isolate;background:linear-gradient(135deg,#ffffffbd,#f8fafce6),#fbfcff;place-items:center;min-width:0;height:100vh;padding:32px;display:grid;position:relative}.badge-display:before{content:"";z-index:-2;background:linear-gradient(135deg, #ffffffa3, #ffffffdb), var(--badge-display-image) center / cover no-repeat;filter:blur(54px)saturate(1.12);opacity:.42;border-radius:34px;position:absolute;inset:6%;transform:scale(1.06)}.badge-display:after{content:"";z-index:-1;pointer-events:none;background:radial-gradient(circle at 50% 48%,#ffffff38,#0000 26%),linear-gradient(#ffffff8f,#f8fafcd1);position:absolute;inset:0}.single-badge{aspect-ratio:1;cursor:default;width:100%;transform-style:preserve-3d;-webkit-user-select:none;user-select:none;pointer-events:none;border-radius:50%;transition:transform .76s cubic-bezier(.18,.78,.22,1);position:relative;transform:rotateY(0)}.badge-hover-zone:hover .single-badge,.badge-hover-zone:focus-within .single-badge,.badge-hover-zone.editing .single-badge{transform:rotateY(180deg)}.single-badge:before{content:"";pointer-events:none;z-index:-2;filter:blur(38px);background:#0f172a52;border-radius:50%;position:absolute;inset:3%;transform:translate3d(0,9%,-80px)scale(.9)}.single-badge-face{backface-visibility:hidden;background:var(--badge-shell);box-shadow:var(--badge-face-shadow), 0 28px 70px #0f172a3d;border-radius:50%;place-items:center;display:grid;position:absolute;inset:0;overflow:hidden}.single-badge-face:after,.single-badge-face.front:before{content:"";border-radius:inherit;pointer-events:none;position:absolute;inset:0}.single-badge-face.front:before{border:var(--badge-rim-width) solid #f4f7fbd1;box-shadow:var(--badge-rim-shadow)}.single-badge-face:after{background:var(--badge-glass)}.single-badge-face img{object-fit:cover;-webkit-user-drag:none;width:100%;height:100%;transform:translateZ(2px)}.single-badge-face.back{background:radial-gradient(circle at 34% 28%,#ffffff6b,#0000 26%),radial-gradient(circle at 68% 72%,#1f29372e,#0000 31%),linear-gradient(145deg,#f8fafc,#aeb8c8 44%,#f1f5f9 72%,#8f9bad);transform:rotateY(180deg)}.engraving-text,.engraving-input{z-index:3;color:#374151d1;text-align:center;width:62%;min-height:54px;font:inherit;letter-spacing:0;text-transform:uppercase;text-shadow:0 1px #ffffffb3,0 -1px #4b55637a;filter:drop-shadow(0 1px #ffffff70);background:0 0;border:0;font-size:clamp(18px,3.4vmin,32px);font-weight:900;position:relative}.engraving-text{cursor:text;pointer-events:auto}.engraving-text:before{content:"";z-index:-1;background:#0f172a0a;border-radius:999px;position:absolute;inset:-14px -18px;box-shadow:inset 0 2px 6px #0f172a38,inset 0 -2px 5px #ffffff80}.engraving-input{pointer-events:auto;box-shadow:none;border-radius:0;outline:0;padding:0}.advanced-cropper-line-wrapper--north,.advanced-cropper-line-wrapper--south{width:100%;height:12px}.advanced-cropper-line-wrapper--north{cursor:n-resize}.advanced-cropper-line-wrapper--south{cursor:s-resize}.advanced-cropper-line-wrapper--east,.advanced-cropper-line-wrapper--west{width:12px;height:100%}.advanced-cropper-line-wrapper--east{cursor:e-resize}.advanced-cropper-line-wrapper--west{cursor:w-resize}.advanced-cropper-line-wrapper--disabled{cursor:auto}.advanced-cropper-line-wrapper__content{position:absolute}.advanced-cropper-line-wrapper__content--east,.advanced-cropper-line-wrapper__content--west{height:100%}.advanced-cropper-line-wrapper__content--north,.advanced-cropper-line-wrapper__content--south{width:100%}.advanced-cropper-line-wrapper__content--east{left:50%;transform:translate(-100%)}.advanced-cropper-line-wrapper__content--west{right:50%;transform:translate(100%)}.advanced-cropper-line-wrapper__content--north{top:50%}.advanced-cropper-line-wrapper__content--south{bottom:50%}.advanced-cropper-handler-wrapper{width:30px;height:30px;position:absolute;transform:translate(-50%,-50%)}.advanced-cropper-handler-wrapper__draggable{justify-content:center;align-items:center;width:100%;height:100%;display:flex}.advanced-cropper-handler-wrapper--west-north{cursor:nw-resize}.advanced-cropper-handler-wrapper--north{cursor:n-resize}.advanced-cropper-handler-wrapper--east-north{cursor:ne-resize}.advanced-cropper-handler-wrapper--east{cursor:e-resize}.advanced-cropper-handler-wrapper--east-south{cursor:se-resize}.advanced-cropper-handler-wrapper--south{cursor:s-resize}.advanced-cropper-handler-wrapper--west-south{cursor:sw-resize}.advanced-cropper-handler-wrapper--west{cursor:w-resize}.advanced-cropper-handler-wrapper--disabled{cursor:auto}.advanced-cropper-bounding-box{width:100%;height:100%;position:relative}.advanced-cropper-bounding-box__handler-wrapper{position:absolute}.advanced-cropper-bounding-box__handler-wrapper--east,.advanced-cropper-bounding-box__handler-wrapper--west{height:100%;top:50%;transform:translateY(-50%)}.advanced-cropper-bounding-box__handler-wrapper--south,.advanced-cropper-bounding-box__handler-wrapper--north{width:100%;left:50%;transform:translate(-50%)}.advanced-cropper-bounding-box__handler-wrapper--west,.advanced-cropper-bounding-box__handler-wrapper--west-north,.advanced-cropper-bounding-box__handler-wrapper--west-south{left:0}.advanced-cropper-bounding-box__handler-wrapper--east,.advanced-cropper-bounding-box__handler-wrapper--east-north,.advanced-cropper-bounding-box__handler-wrapper--east-south{left:100%}.advanced-cropper-bounding-box__handler-wrapper--north,.advanced-cropper-bounding-box__handler-wrapper--west-north,.advanced-cropper-bounding-box__handler-wrapper--east-north{top:0}.advanced-cropper-bounding-box__handler-wrapper--south,.advanced-cropper-bounding-box__handler-wrapper--west-south,.advanced-cropper-bounding-box__handler-wrapper--east-south{top:100%}.advanced-cropper-bounding-box__handler{position:absolute}.advanced-cropper-bounding-box__handler--west-north{top:0;left:0}.advanced-cropper-bounding-box__handler--north{top:0;left:50%}.advanced-cropper-bounding-box__handler--east-north{top:0;left:100%}.advanced-cropper-bounding-box__handler--east{top:50%;left:100%}.advanced-cropper-bounding-box__handler--east-south{top:100%;left:100%}.advanced-cropper-bounding-box__handler--south{top:100%;left:50%}.advanced-cropper-bounding-box__handler--west-south{top:100%;left:0}.advanced-cropper-bounding-box__handler--west{top:50%;left:0}.advanced-cropper-bounding-box__line{position:absolute}.advanced-cropper-bounding-box__line--north,.advanced-cropper-bounding-box__line--south{left:0;transform:translateY(-50%)}.advanced-cropper-bounding-box__line--north{top:0}.advanced-cropper-bounding-box__line--south{top:100%}.advanced-cropper-bounding-box__line--west,.advanced-cropper-bounding-box__line--east{top:0;transform:translate(-50%)}.advanced-cropper-bounding-box__line--west{left:0}.advanced-cropper-bounding-box__line--east{left:100%}.advanced-cropper-artificial-transition{will-change:transform}.advanced-cropper-background-image{-webkit-user-select:none;user-select:none;transform-origin:50%;pointer-events:none;position:absolute;max-width:none!important}.advanced-cropper-canvas{display:none}.advanced-cropper-source{visibility:hidden;opacity:0;width:1px;height:1px;position:absolute}.advanced-cropper-fade{visibility:hidden;opacity:0;flex-direction:column;transition:all .5s;display:flex}.advanced-cropper-fade--visible{opacity:1;visibility:visible}.advanced-cropper-wrapper__fade{flex-grow:1;min-height:0}.advanced-cropper-stencil-grid{border-collapse:collapse;table-layout:fixed;opacity:0;transition:opacity .3s;display:table}.advanced-cropper-stencil-grid--visible{opacity:1}.advanced-cropper-stencil-grid__row{display:table-row}.advanced-cropper-stencil-grid__cell{border:1px solid;width:1%;height:1%;display:table-cell}.advanced-cropper-stencil-grid__cell--top{border-top-color:#0000}.advanced-cropper-stencil-grid__cell--left{border-left-color:#0000}.advanced-cropper-stencil-grid__cell--right{border-right-color:#0000}.advanced-cropper-stencil-grid__cell--bottom{border-bottom-color:#0000}.advanced-cropper-stencil-overlay{box-sizing:content-box;pointer-events:none;-webkit-backface-visibility:hidden;width:100%;height:100%;position:absolute;box-shadow:0 0 0 1000px}.advanced-cropper-stencil-wrapper{will-change:transform}.advanced-cropper-boundary{-webkit-user-select:none;user-select:none;direction:ltr;position:relative}.advanced-cropper-boundary__content{width:100%;height:100%;position:absolute;top:0;left:0}.advanced-cropper-boundary__stretcher{pointer-events:none;max-width:100%;max-height:100%;position:relative}.advanced-cropper-circle-stencil{box-sizing:content-box;-webkit-backface-visibility:hidden;width:100%;height:100%;-webkit-transform-style:preserve-3d;position:absolute}.advanced-cropper-circle-stencil__overlay{border-radius:50%;overflow:hidden}.advanced-cropper-circle-stencil__preview{border-radius:50%}.advanced-cropper-circle-stencil__draggable-area,.advanced-cropper-circle-stencil__overlay,.advanced-cropper-circle-stencil__preview,.advanced-cropper-circle-stencil__grid{width:100%;height:100%;position:absolute}.advanced-cropper-circle-stencil--movable{cursor:move}.advanced-cropper-rectangle-stencil{box-sizing:border-box;-webkit-backface-visibility:hidden;width:100%;height:100%;-webkit-transform-style:preserve-3d;position:absolute}.advanced-cropper-rectangle-stencil__draggable-area,.advanced-cropper-rectangle-stencil__overlay,.advanced-cropper-rectangle-stencil__preview,.advanced-cropper-rectangle-stencil__grid{width:100%;height:100%;position:absolute}.advanced-cropper-rectangle-stencil--movable{cursor:move}.advanced-cropper-simple-line{background:0 0;border-width:0}.advanced-cropper-simple-line--south,.advanced-cropper-simple-line--north{width:100%;height:0}.advanced-cropper-simple-line--east,.advanced-cropper-simple-line--west{width:0;height:100%}.advanced-cropper-simple-line--east{border-right-width:1px}.advanced-cropper-simple-line--west{border-left-width:1px}.advanced-cropper-simple-line--south{border-bottom-width:1px}.advanced-cropper-simple-line--north{border-top-width:1px}.advanced-cropper-simple-handler{display:block}.advanced-cropper-preview{box-sizing:border-box;flex-direction:column;display:flex;position:relative;overflow:hidden}.advanced-cropper-preview__content{position:absolute;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%)}.advanced-cropper-preview__image{pointer-events:none;-webkit-user-select:none;user-select:none;transform-origin:50%;display:none;position:absolute;max-width:none!important}.advanced-cropper-preview__image--visible{display:block}.advanced-cropper-preview__boundary{flex-grow:1;min-width:0;min-height:0}.cropper-preview-wrapper__fade{flex-grow:1;width:100%;min-height:0}.advanced-cropper{color:#fff;background:#000;flex-direction:column;max-height:100%;display:flex;position:relative;overflow:hidden}.advanced-cropper__boundary{flex-grow:1;min-width:0;min-height:0}.advanced-cropper__wrapper,.advanced-cropper__background-wrapper{position:absolute;inset:0}.advanced-cropper__stencil-wrapper{position:absolute}.advanced-cropper *{box-sizing:border-box}.advanced-cropper-simple-handler{background:currentColor;width:10px;height:10px}.advanced-cropper-simple-line{border-style:solid;border-color:#ffffff4d;transition:border .5s}.advanced-cropper-simple-line--hover{border-color:#fff}.advanced-cropper-circle-stencil__preview{border:2px solid #fff3}.advanced-cropper-stencil-overlay{color:#00000080}.advanced-cropper-stencil-grid{color:#fff6}.image-editor-shell{--editor-bg:#f6f9ff;--editor-ink:#102033;--editor-muted:#617289;--editor-faint:#95a8c2;--editor-line:#2b5d9724;--editor-line-strong:#2563eb3d;--editor-panel:#ffffffd1;--editor-panel-solid:#fff;--editor-deep:#174ea6;--editor-accent:#2563eb;--editor-accent-soft:#2563eb1a;--editor-radius:8px;--editor-shadow:0 18px 46px #1e40af1a;min-width:0;color:var(--editor-ink);grid-template-columns:288px minmax(420px,1fr) 336px;display:grid;position:fixed;inset:0;overflow:hidden}.image-editor-shell button,.image-editor-shell input{font:inherit}.image-editor-shell button{-webkit-user-select:none;user-select:none}.image-editor-shell button:active,.editor-back-link:active{transform:translateY(1px)}.image-assets-panel,.tool-panel{z-index:2;border-color:var(--editor-line);background:linear-gradient(180deg, #fffffff0, #f6faffd6), var(--editor-panel);-webkit-backdrop-filter:blur(18px)saturate(1.12);backdrop-filter:blur(18px)saturate(1.12);scrollbar-width:thin;scrollbar-color:#2563eb42 transparent;min-width:0;height:100dvh;position:relative;overflow-y:auto}.image-assets-panel{border-right:1px solid var(--editor-line);flex-direction:column;gap:18px;padding:22px 18px;display:flex;box-shadow:16px 0 42px #1e40af0f}.editor-back-link,.secondary-action,.primary-action,.topbar-upload,.export-summary button{border-radius:var(--editor-radius);justify-content:center;align-items:center;gap:8px;min-height:44px;text-decoration:none;display:inline-flex}.editor-back-link{width:fit-content;color:var(--editor-muted);border:1px solid #0000;padding:0 12px;font-weight:760}.editor-back-link:hover,.editor-back-link:focus-visible{color:var(--editor-ink);border-color:var(--editor-line);background:#ffffffc2}.upload-dropzone{border-radius:var(--editor-radius);background:linear-gradient(135deg, #ffffffc2, #ffffffc2), var(--editor-accent-soft);cursor:pointer;border:1px dashed #2563eb42;gap:10px;padding:22px;display:grid;position:relative;overflow:hidden}.upload-dropzone:before{content:"";pointer-events:none;background:linear-gradient(120deg,#0000 0 62%,#dbeafe9e 62% 100%);position:absolute;inset:0}.upload-dropzone>*{position:relative}.upload-dropzone-icon{border-radius:var(--editor-radius);color:#fff;background:var(--editor-deep);place-items:center;width:48px;height:48px;font-size:25px;display:grid;box-shadow:inset 0 1px #ffffff2e}.upload-dropzone strong{font-size:18px;line-height:1.25}.upload-dropzone span:not(.upload-dropzone-icon){color:var(--editor-muted);font-size:13px;line-height:1.5}.upload-dropzone button,.secondary-action,.export-summary button{color:#fff;background:var(--editor-deep);cursor:pointer;border:0;font-weight:820}.upload-dropzone button:hover,.secondary-action:hover,.export-summary button:hover,.primary-action:hover{filter:brightness(1.04);box-shadow:0 12px 24px #1f332c29}.asset-stack,.result-stack,.tool-section,.export-summary{gap:12px;display:grid}.panel-heading,.tool-section-title{color:var(--editor-muted);justify-content:space-between;align-items:center;gap:12px;font-size:13px;font-weight:820;display:flex}.panel-heading strong{color:var(--editor-ink)}.asset-row{border-radius:var(--editor-radius);width:100%;min-height:74px;color:inherit;background:0 0;border:1px solid #0000;position:relative}.asset-row.active,.asset-row.selected,.asset-row:hover,.asset-row:focus-within{background:#ffffffd1;border-color:#2563eb3d;box-shadow:0 14px 28px #1e40af12}.asset-select{width:100%;min-height:72px;color:inherit;cursor:pointer;text-align:left;background:0 0;border:0;grid-template-columns:56px minmax(0,1fr);align-items:center;gap:12px;padding:8px 42px 8px 8px;display:grid}.asset-delete{width:30px;height:30px;color:var(--editor-muted);cursor:pointer;opacity:0;background:#ffffffdb;border:1px solid #2563eb29;border-radius:8px;place-items:center;transition:opacity .14s,transform .14s,color .14s;display:grid;position:absolute;top:50%;right:8px;transform:translateY(-50%)scale(.96)}.asset-row:hover .asset-delete,.asset-row:focus-within .asset-delete{opacity:1;transform:translateY(-50%)scale(1)}.asset-delete:hover,.asset-delete:focus-visible{color:#dc2626;border-color:#dc262638}.asset-thumb{border-radius:var(--editor-radius);color:#fff;isolation:isolate;place-items:end start;width:56px;height:56px;display:grid;position:relative;overflow:hidden}.asset-thumb:before{content:"";z-index:-1;background:linear-gradient(135deg,#93c5fd,#2563eb 52%,#0f172a);position:absolute;inset:0}.asset-thumb.mint:before{background:linear-gradient(135deg,#dbeafe,#60a5fa 48%,#1e3a8a)}.asset-thumb.blue:before{background:linear-gradient(135deg,#bfdbfe,#3b82f6 48%,#0f2749)}.asset-thumb span{margin:7px;font-size:12px;font-weight:900}.asset-copy{gap:4px;min-width:0;display:grid}.asset-copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.asset-copy small{color:var(--editor-muted);font-size:12px}.result-grid-mini{border:1px solid var(--editor-line);border-radius:var(--editor-radius);background:#ffffff9e;grid-template-columns:repeat(3,1fr);gap:5px;padding:10px;display:grid}.secondary-action{width:100%}.editor-workbench{background:linear-gradient(90deg,#2563eb1f 1px,#0000 1px) 0 0/36px 36px,linear-gradient(#2563eb1a 1px,#0000 1px) 0 0/36px 36px,#fff;grid-template-rows:auto minmax(0,1fr);min-width:0;height:100dvh;display:grid;overflow:hidden}.editor-topbar{justify-content:space-between;align-items:center;gap:18px;padding:22px 28px 14px;display:flex}.workspace-kicker{color:var(--editor-accent);text-transform:uppercase;margin-bottom:4px;font-size:12px;font-weight:900;display:block}.editor-topbar h1{letter-spacing:0;margin:0;font-size:clamp(26px,3vw,38px);line-height:1.05}.canvas-zone{place-items:center;min-height:0;padding:36px 44px 58px;display:grid;position:relative}.canvas-zone:before{content:"";pointer-events:none;background:linear-gradient(90deg,#2563eb0e 1px,#0000 1px) 0 0/28px 28px,linear-gradient(#2563eb0d 1px,#0000 1px) 0 0/28px 28px,#ffffff61;border-radius:18px;position:absolute;inset:44px 56px 70px;box-shadow:inset 0 0 0 1px #93c5fd5c}.canvas-ruler{pointer-events:none;opacity:.46;position:absolute}.canvas-ruler.horizontal{background:repeating-linear-gradient(90deg,#2563eb42 0 1px,#0000 1px 24px);height:14px;top:18px;left:44px;right:44px}.canvas-ruler.vertical{background:repeating-linear-gradient(#2563eb42 0 1px,#0000 1px 24px);width:14px;top:36px;bottom:58px;left:18px}.image-canvas{aspect-ratio:4/3;background:#fff;border:1px solid #2563eb33;width:min(70vh,62vw,728px);max-width:100%;padding:12px;position:relative}.mock-photo{background:radial-gradient(circle at 74% 18%,#dbeafeeb 0 8%,#0000 18%),linear-gradient(#ffffffd1,#0000 45%),linear-gradient(135deg,#eff6ff 0%,#dbeafe 34%,#93c5fd 62%,#1d4ed8 100%);border-radius:6px;height:100%;position:relative;overflow:hidden}.sun{aspect-ratio:1;background:#ffffffeb;border-radius:50%;width:14%;position:absolute;top:13%;right:13%;box-shadow:0 0 46px #bfdbfee6}.photo-band{border-radius:50% 50% 0 0;position:absolute;left:-8%;right:-8%}.band-one{background:#1e40afbd;height:54%;bottom:-22%}.band-two{background:#3b82f6b8;height:36%;bottom:-8%}.band-three{background:#dbeafed1;height:18%;bottom:-2%}.crop-overlay{border:2px solid #fffffff5;border-radius:7px;grid-template-rows:repeat(3,1fr);grid-template-columns:repeat(3,1fr);display:grid;position:absolute;inset:12px;box-shadow:0 0 0 999px #0f172a2e}.crop-overlay:before,.crop-overlay:after{content:"";pointer-events:none;position:absolute}.crop-overlay:before{border-radius:inherit;inset:-2px;box-shadow:inset 0 0 0 1px #1e40af47}.crop-overlay:after{background:#2563eba3;width:1px;height:calc(100% + 40px);top:-20px;left:50%;transform:translate(-50%)}.crop-overlay span{color:#ffffffeb;text-shadow:0 1px 9px #00000052;border-bottom:1px solid #ffffffdb;border-right:1px solid #ffffffdb;place-items:center;font-size:13px;font-weight:900;display:grid}.crop-overlay span:nth-child(3n){border-right:0}.crop-overlay span:nth-last-child(-n+3){border-bottom:0}.canvas-footer{color:var(--editor-muted);justify-content:space-between;gap:12px;font-size:12px;font-weight:820;display:flex;position:absolute;bottom:22px;left:44px;right:44px}.tool-panel{border-left:1px solid var(--editor-line);align-content:start;gap:18px;padding:22px;display:grid;box-shadow:-16px 0 42px #1e40af0d}.tool-tabs{border:1px solid var(--editor-line);border-radius:var(--editor-radius);background:#ffffff94;grid-template-columns:repeat(5,1fr);gap:6px;padding:6px;display:grid}.tool-tabs button{min-width:0;min-height:58px;color:var(--editor-muted);cursor:pointer;background:0 0;border:0;border-radius:8px;place-items:center;gap:4px;font-size:18px;display:grid}.tool-tabs button span{font-size:11px;font-weight:820}.tool-tabs button.active,.tool-tabs button:hover,.tool-tabs button:focus-visible{color:#fff;background:var(--editor-deep)}.tool-section,.export-summary{border:1px solid var(--editor-line);border-radius:var(--editor-radius);background:#ffffffa8;padding:16px}.tool-section-title button{border:1px solid var(--editor-line);min-height:32px;color:var(--editor-muted);cursor:pointer;background:#ffffffc7;border-radius:8px;padding:0 10px;font-weight:820}.tool-section-title button:hover,.tool-section-title button:focus-visible{color:var(--editor-ink);border-color:var(--editor-line-strong)}.preset-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.preset-grid button{border:1px solid var(--editor-line);border-radius:var(--editor-radius);min-height:72px;color:inherit;cursor:pointer;text-align:left;background:#ffffff9e;gap:5px;padding:12px;display:grid}.preset-grid button.active,.preset-grid button:hover,.preset-grid button:focus-visible{background:var(--editor-accent-soft);border-color:#2563eb61}.preset-grid strong{font-size:14px}.preset-grid span{color:var(--editor-muted);font-size:12px;font-weight:820}.control-row{min-height:44px;color:var(--editor-muted);grid-template-columns:1fr 88px;align-items:center;gap:12px;font-size:13px;font-weight:820;display:grid}.control-row input{border:1px solid var(--editor-line);width:100%;height:38px;color:var(--editor-ink);text-align:center;background:#ffffffd1;border-radius:8px;font-weight:900}.ratio-input-pair{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:6px;display:grid}.ratio-input-pair small{color:var(--editor-muted);font-size:13px;font-weight:900}.ratio-control-row{grid-template-columns:1fr 118px}.icon-button-grid{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.icon-button-grid button{border:1px solid var(--editor-line);border-radius:var(--editor-radius);min-height:64px;color:var(--editor-muted);cursor:pointer;background:#ffffff9e;place-items:center;gap:5px;font-size:19px;display:grid}.icon-button-grid span{font-size:11px;font-weight:820}.icon-button-grid button:hover,.icon-button-grid button:focus-visible{color:var(--editor-ink);background:var(--editor-accent-soft);border-color:#2563eb4d}.export-summary{color:var(--editor-ink);background:linear-gradient(#ffffffeb,#eff6ffd1),#fff;border-color:#2563eb2e;grid-template-columns:minmax(0,1fr);box-shadow:0 16px 34px #1e40af14}.export-summary div{gap:4px;display:grid}.export-summary span{color:var(--editor-muted);font-size:12px;font-weight:820}.export-summary strong{color:var(--editor-ink);font-size:18px}.export-summary button{color:#fff;background:linear-gradient(135deg,#2563eb,#174ea6 68%,#123b82);border:1px solid #2563eb47;border-radius:10px;width:100%;min-height:50px;position:relative;overflow:hidden;box-shadow:0 14px 28px #2563eb33}.export-summary button span{color:#fff}.export-summary button:before{content:"";pointer-events:none;background:linear-gradient(#ffffff2e,#0000 58%);border-radius:9px;position:absolute;inset:1px}.export-summary button>*{position:relative}.export-summary button:hover,.export-summary button:focus-visible{filter:none;box-shadow:0 18px 32px #2563eb42}@media (prefers-reduced-motion:reduce){.image-editor-shell *,.image-editor-shell :before,.image-editor-shell :after{transition-duration:.01ms!important;animation-duration:.01ms!important}}@media (width<=1120px){.image-editor-shell{grid-template-columns:240px minmax(0,1fr);min-height:100dvh;position:static;overflow:visible}.tool-panel{border-left:0;border-top:1px solid var(--editor-line);grid-column:1/-1;height:auto}.editor-workbench,.image-assets-panel{height:auto;min-height:100dvh}}@media (width<=760px){.image-editor-shell{grid-template-columns:1fr}.image-assets-panel,.editor-workbench,.tool-panel{border:0;height:auto;min-height:auto}.editor-topbar{flex-direction:column;align-items:flex-start;padding:22px 18px 10px}.canvas-zone{padding:34px 18px 58px}.canvas-zone:before,.canvas-ruler.vertical{display:none}.canvas-ruler.horizontal{left:18px;right:18px}.image-canvas{width:100%}.canvas-footer{flex-direction:column;left:18px;right:18px}.tool-tabs{grid-template-columns:repeat(5,minmax(54px,1fr));overflow-x:auto}}.file-input{opacity:0;pointer-events:none;width:1px;height:1px;position:fixed}.image-editor-shell button:disabled{cursor:not-allowed;opacity:.48;box-shadow:none;transform:none}.empty-note{border-radius:var(--editor-radius);color:var(--editor-muted);background:#ffffff9e;border:1px dashed #2563eb2e;margin:0;padding:14px;font-size:13px;line-height:1.45}.asset-thumb img,.result-grid-mini img{object-fit:cover;-webkit-user-drag:none;z-index:0;width:100%;height:100%;position:absolute;inset:0}.result-card{aspect-ratio:1;cursor:pointer;background:linear-gradient(135deg,#93c5fd,#2563eb);border:1px solid #0000;border-radius:5px;place-items:center;display:grid;position:relative;overflow:hidden}.result-card.active,.result-card.selected,.result-card:focus-visible{border-color:#2563eb8c;outline:none;box-shadow:0 0 0 2px #2563eb1f}.result-actions{z-index:2;opacity:0;background:#ffffff80;grid-template-columns:repeat(3,1fr);gap:3px;width:100%;transition:opacity .14s,transform .14s;display:grid;position:absolute;bottom:0;transform:translateY(6px)}.result-card:hover .result-actions,.result-card:focus-within .result-actions{opacity:1;transform:translateY(0)}.result-actions button{width:20px;height:26px;color:var(--editor-ink);cursor:pointer;background:0 0;border:0;place-items:center;padding:0;font-size:14px;display:grid}.result-actions button:hover,.result-actions button:focus-visible{color:var(--editor-accent);background:#fff}.asset-thumb span{z-index:1;text-shadow:0 1px 8px #0f172a57;position:relative}.preview-image{object-fit:contain;-webkit-user-drag:none;background:#fff;border-radius:6px;width:100%;height:100%;transition:transform .18s;display:block}.crop-overlay{grid-template-columns:repeat(var(--grid-columns,3), 1fr);grid-template-rows:repeat(var(--grid-rows,3), 1fr)}.crop-overlay span:nth-child(3n),.crop-overlay span:nth-last-child(-n+3){border-bottom:1px solid #ffffffdb;border-right:1px solid #ffffffdb}.icon-button-grid{grid-template-columns:repeat(5,1fr)}.crop-overlay{pointer-events:none;background:0 0}.crop-overlay:before{box-shadow:none}.crop-overlay:after{display:none}.crop-overlay span{color:#0000;text-shadow:none}.canvas-zone:before{display:none}.crop-overlay{box-shadow:none}.canvas-zone:before{background:linear-gradient(90deg,#2563eb14 1px,#0000 1px) 0 0/30px 30px,linear-gradient(#2563eb12 1px,#0000 1px) 0 0/30px 30px,#ffffff75;display:block;box-shadow:inset 0 0 0 1px #93c5fd47}.image-canvas.has-image,.image-canvas.is-empty{overflow:hidden}.image-canvas.has-image{background:#fff;padding:0}.image-canvas.is-empty{place-items:center;display:grid}.editor-grid-board{opacity:.72;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;width:min(68%,420px);display:grid}.editor-grid-board span{aspect-ratio:1;background:#eff6ffa8;border:1px solid #2563eb2e;border-radius:7px;box-shadow:inset 0 0 0 1px #ffffffe6}.editor-cropper{background:#fff}.editor-crop-area{color:#2563ebb8!important;box-shadow:0 0 0 9999em #ffffff29!important}.editor-crop-media{-webkit-user-drag:none}.tool-tabs{grid-template-columns:repeat(3,1fr)}.zoom-input-control{border:1px solid var(--editor-line);background:#ffffffc7;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;min-height:44px;padding:0 12px;display:grid}.zoom-input-control:focus-within{border-color:#2563eb61;box-shadow:0 0 0 3px #2563eb14}.zoom-input-control input{width:100%;min-width:0;color:var(--editor-ink);background:0 0;border:0;outline:none;font-size:18px;font-weight:900}.zoom-input-control span{color:var(--editor-muted);font-size:13px;font-weight:900}.tool-section-title strong{color:var(--editor-ink);font-size:13px}@media (width<=760px){.tool-tabs{grid-template-columns:repeat(3,minmax(72px,1fr))}}.canvas-zone{--canvas-board-inset:44px 56px 70px}.canvas-zone:before,.image-canvas{inset:var(--canvas-board-inset)}.image-canvas{aspect-ratio:auto;z-index:1;width:auto;max-width:none;padding:0;position:absolute}.canvas-footer{z-index:2}@media (width<=760px){.canvas-zone{--canvas-board-inset:34px 18px 70px}}.ratio-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.ratio-grid button{border:1px solid var(--editor-line);min-height:38px;color:var(--editor-muted);cursor:pointer;background:#ffffff9e;border-radius:8px;font-size:12px;font-weight:850}.ratio-grid button.active,.ratio-grid button:hover,.ratio-grid button:focus-visible{color:var(--editor-ink);background:var(--editor-accent-soft);border-color:#2563eb61}.ratio-grid button{place-items:center;gap:6px;min-height:62px;display:grid}.ratio-icon{width:min(34px,72%);aspect-ratio:var(--ratio-shape);opacity:.78;border:2px solid;border-radius:3px;display:block}.ratio-grid button.active .ratio-icon,.ratio-grid button:hover .ratio-icon,.ratio-grid button:focus-visible .ratio-icon{opacity:1}.ratio-icon{opacity:.82;border:0;border-radius:0;place-items:center;width:36px;height:28px;display:grid}.ratio-icon:before{content:"";width:min(28px, calc(28px * var(--ratio-value)));height:min(28px, calc(28px / var(--ratio-value)));background:#ffffff4d;border:2px solid;border-radius:3px}.editor-cropper{background:#fff;width:100%;height:100%}.editor-cropper-background{background:#fff}.editor-cropper-media{-webkit-user-drag:none}.stitch-preview-canvas{background:linear-gradient(90deg,#2563eb14 1px,#0000 1px) 0 0/30px 30px,linear-gradient(#2563eb12 1px,#0000 1px) 0 0/30px 30px,#fff;place-items:center;display:grid}.stitch-preview-canvas.is-draggable{cursor:grab;touch-action:none}.stitch-preview-canvas.is-dragging{cursor:grabbing}.stitch-preview-image{object-fit:contain;transform-origin:50%;pointer-events:none;-webkit-user-drag:none;-webkit-user-select:none;user-select:none;max-width:86%;max-height:86%;transition:transform .14s;display:block;box-shadow:0 18px 42px #1e40af2e}.stitch-preview-canvas.is-dragging .stitch-preview-image{transition:none}.stitch-order-list{gap:8px;display:grid}.stitch-order-item{border:1px solid var(--editor-line);cursor:grab;background:#ffffffad;border-radius:8px;grid-template-columns:44px minmax(0,1fr) 30px;align-items:center;gap:10px;min-height:58px;padding:7px;display:grid}.stitch-order-item:active{cursor:grabbing}.stitch-order-item img{object-fit:cover;border-radius:7px;width:44px;height:44px}.stitch-order-item span{gap:3px;min-width:0;display:grid}.stitch-order-item strong,.stitch-order-item small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.stitch-order-item strong{color:var(--editor-ink);font-size:13px}.stitch-order-item small{color:var(--editor-muted);font-size:11px}.stitch-order-item button{width:30px;height:30px;color:var(--editor-muted);cursor:pointer;background:#ffffffdb;border:1px solid #2563eb29;border-radius:8px;place-items:center;display:grid}.stitch-order-item button:hover,.stitch-order-item button:focus-visible{color:#dc2626;border-color:#dc262638}.grid-preview-frame{z-index:3;grid-template-columns:repeat(var(--grid-preview-columns), minmax(0, 1fr));grid-template-rows:repeat(var(--grid-preview-rows), minmax(0, 1fr));gap:var(--grid-preview-gap);width:min(76%, calc(76% * var(--grid-preview-aspect)));max-width:82%;max-height:78%;aspect-ratio:var(--grid-preview-aspect);pointer-events:none;filter:drop-shadow(0 16px 30px #1e40af2e);padding:0;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.grid-preview-frame.has-metrics{left:var(--grid-preview-left);top:var(--grid-preview-top);width:var(--grid-preview-width);height:var(--grid-preview-height);aspect-ratio:auto;max-width:none;max-height:none;transform:none}.grid-preview-frame span{background:#ffffff1f;border:1px solid #2563ebb8;min-width:0;min-height:0;box-shadow:inset 0 0 0 1px #ffffffb8,inset 0 0 22px #dbeafe57}.advanced-cropper__stencil{border-color:#2563ebbd}.advanced-cropper__stencil-grid{border-color:#ffffffb3}.advanced-cropper__handler{background:var(--editor-accent);border:2px solid #fff;width:12px;height:12px;box-shadow:0 4px 12px #1e40af38}.advanced-cropper__line{border-color:#2563ebc2}.ratio-remix-icon{color:currentColor;opacity:.86;place-items:center;width:36px;height:28px;font-size:24px;display:grid}.ratio-grid button.active .ratio-remix-icon,.ratio-grid button:hover .ratio-remix-icon,.ratio-grid button:focus-visible .ratio-remix-icon{opacity:1}.editor-cropper.is-preview-only .advanced-cropper-stencil-wrapper,.editor-cropper.is-preview-only .advanced-cropper-rectangle-stencil,.editor-cropper.is-preview-only .advanced-cropper-rectangle-stencil__bounding-box,.editor-cropper.is-preview-only .advanced-cropper-stencil-overlay,.editor-cropper.is-preview-only .advanced-cropper-stencil-grid,.editor-cropper.is-preview-only .advanced-cropper-simple-line,.editor-cropper.is-preview-only .advanced-cropper-simple-handler{opacity:0!important;pointer-events:none!important}.portal-card{color:inherit;--card-width:158px;--card-height:104px;left:var(--card-x);top:var(--card-y);z-index:2;width:var(--card-width);min-height:var(--card-height);transform:translate(-50%, -50%) rotate(var(--card-rotate));-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);-webkit-user-select:none;user-select:none;animation:7.4s ease-in-out infinite card-float;animation-delay:var(--float-delay);background:linear-gradient(145deg,#ffffff21,#ffffff0a),#0d1226c2;border:1px solid #ffffff29;border-radius:8px;grid-template-rows:auto auto minmax(0,1fr);gap:7px;padding:14px;text-decoration:none;transition:border-color .22s,box-shadow .22s,filter .22s,opacity .22s,transform .22s;display:grid;position:absolute;overflow:hidden;box-shadow:inset 0 1px #ffffff24,0 18px 44px #0000003d}.portal-card.large{--card-width:180px;--card-height:120px}.portal-card.small{--card-width:138px;--card-height:94px}.portal-card.tiny{--card-width:106px;--card-height:76px;padding:12px}.portal-card.is-linked{cursor:pointer}.portal-card.is-linked:hover,.portal-card.is-linked:focus-visible{filter:none;border-color:#ffffff29;box-shadow:inset 0 1px #ffffff24,0 18px 44px #0000003d}.card-star.active,:is(.portal-map:has(.portal-card[data-card-id=badges]:hover) .card-star[data-card-star=badges],.portal-map:has(.portal-card[data-card-id=badges]:focus-visible) .card-star[data-card-star=badges],.portal-map:has(.portal-card[data-card-id=tasks]:hover) .card-star[data-card-star=tasks],.portal-map:has(.portal-card[data-card-id=tasks]:focus-visible) .card-star[data-card-star=tasks],.portal-map:has(.portal-card[data-card-id=calendar]:hover) .card-star[data-card-star=calendar],.portal-map:has(.portal-card[data-card-id=calendar]:focus-visible) .card-star[data-card-star=calendar],.portal-map:has(.portal-card[data-card-id=customers]:hover) .card-star[data-card-star=customers],.portal-map:has(.portal-card[data-card-id=customers]:focus-visible) .card-star[data-card-star=customers],.portal-map:has(.portal-card[data-card-id=orders]:hover) .card-star[data-card-star=orders],.portal-map:has(.portal-card[data-card-id=orders]:focus-visible) .card-star[data-card-star=orders],.portal-map:has(.portal-card[data-card-id=finance]:hover) .card-star[data-card-star=finance],.portal-map:has(.portal-card[data-card-id=finance]:focus-visible) .card-star[data-card-star=finance],.portal-map:has(.portal-card[data-card-id=slot-07]:hover) .card-star[data-card-star=slot-07],.portal-map:has(.portal-card[data-card-id=slot-08]:hover) .card-star[data-card-star=slot-08],.portal-map:has(.portal-card[data-card-id=slot-09]:hover) .card-star[data-card-star=slot-09],.portal-map:has(.portal-card[data-card-id=slot-10]:hover) .card-star[data-card-star=slot-10],.portal-map:has(.portal-card[data-card-id=slot-11]:hover) .card-star[data-card-star=slot-11],.portal-map:has(.portal-card[data-card-id=slot-12]:hover) .card-star[data-card-star=slot-12],.portal-map:has(.portal-card[data-card-id=slot-13]:hover) .card-star[data-card-star=slot-13],.portal-map:has(.portal-card[data-card-id=slot-14]:hover) .card-star[data-card-star=slot-14],.portal-map:has(.portal-card[data-card-id=slot-15]:hover) .card-star[data-card-star=slot-15],.portal-map:has(.portal-card[data-card-id=slot-16]:hover) .card-star[data-card-star=slot-16],.portal-map:has(.portal-card[data-card-id=slot-17]:hover) .card-star[data-card-star=slot-17],.portal-map:has(.portal-card[data-card-id=slot-18]:hover) .card-star[data-card-star=slot-18],.portal-map:has(.portal-card[data-card-id=slot-19]:hover) .card-star[data-card-star=slot-19],.portal-map:has(.portal-card[data-card-id=slot-20]:hover) .card-star[data-card-star=slot-20]){opacity:1;animation-play-state:paused;transform:translate(-50%,-50%)scale(1.42);box-shadow:0 0 0 1px #ffffff7a,0 0 18px #fffffffa,0 0 42px #7dd3fceb,0 0 74px #38bdf85c}.portal-card.is-empty{opacity:.64;filter:saturate(.74)}.portal-card:before{content:"";aspect-ratio:1;pointer-events:none;background:#ffffff1f;border-radius:50%;width:112px;position:absolute;inset:-30% -20% auto auto}.portal-card .card-art{opacity:.72;width:38px;height:38px;position:absolute;top:12px;right:12px}.portal-card .card-kicker{color:#eaf3ff8f;letter-spacing:0;font-size:11px;font-weight:800}.portal-card strong{color:#fff;font-size:17px;line-height:1.16}.portal-card span:last-child{color:#ebf2ffb8;max-width:11.5em;font-size:12px;line-height:1.45}.portal-card.tiny strong{font-size:15px}.portal-card.tiny span:last-child{font-size:12px}.portal-card.badge{color:#263242;text-align:center;background:var(--badge-shell);width:172px;min-height:172px;box-shadow:var(--badge-face-shadow), 0 28px 70px #00000057;border:0;border-radius:50%;padding:22px;display:block;overflow:visible}.portal-card.badge:before{z-index:3;border:var(--badge-rim-width) solid #f4f7fbd1;width:auto;box-shadow:var(--badge-rim-shadow);background:0 0;border-radius:50%;inset:0}.portal-card.badge:after{content:"";background:var(--badge-glass);pointer-events:none;z-index:2;border-radius:50%;position:absolute;inset:0}.portal-card.badge .card-kicker,.portal-card.badge span:last-child{display:none}.portal-card.badge .card-art{opacity:1;z-index:1;background:url(./badge-default-EF_SiC3X.jpg) 50%/cover no-repeat;border-radius:50%;width:100%;height:100%;display:block;position:absolute;inset:0;transform:translateZ(2px)}.portal-card.badge strong{z-index:3;color:#202939;text-shadow:0 1px #ffffffa8;width:74%;font-size:16px;line-height:1.12;position:absolute;top:28px;left:50%;transform:translate(-50%)rotate(-7deg)}.portal-card.image{background:linear-gradient(145deg,#e05f4480,#0f8b805c 48%,#0d1226c7)}.portal-card.image .card-art{color:#ffffffd1;place-items:center;font-size:38px;display:grid}.portal-card.work{background:linear-gradient(145deg,#3b82f67a,#0d1226c7)}.portal-card.time{background:linear-gradient(145deg,#22c55e6b,#0d1226c7)}.portal-card.client{background:linear-gradient(145deg,#f43f5e6b,#0d1226c7)}.portal-card.order{background:linear-gradient(145deg,#818cf870,#0d1226c7)}.portal-card.finance{background:linear-gradient(145deg,#14b8a670,#0d1226c7)}.portal-card.work .card-art,.portal-card.order .card-art{border:2px solid #ffffffb8;border-radius:8px;box-shadow:inset 0 11px #ffffff29,inset 0 -11px #ffffff29}.portal-card.time .card-art{border:2px solid #ffffffbd;border-radius:50%}.portal-card.time .card-art:before{content:"";transform-origin:bottom;background:#ffffffc2;width:2px;height:16px;position:absolute;top:8px;left:20px;transform:rotate(38deg)}.portal-card.client .card-art{background:radial-gradient(circle at 50% 29%,#ffffffd9 0 8px,#0000 9px),linear-gradient(#ffffffb8 0 0) bottom/31px 17px no-repeat;border-radius:50% 50% 8px 8px}.portal-card.finance .card-art{border-bottom:6px solid #ffffffad;border-left:6px solid #ffffffad}.portal-card.finance .card-art:before{content:"";border-top:3px solid #ffffffb8;border-right:3px solid #ffffffb8;width:28px;height:21px;position:absolute;bottom:8px;left:7px;transform:skewY(-28deg)}@keyframes card-float{0%,to{transform:translate(-50%, -50%) rotate(var(--card-rotate))}50%{transform:translate(-50%, calc(-50% - 8px)) rotate(calc(var(--card-rotate) + .8deg))}}.starfield-home{color:#f7fbff;isolation:isolate;background:radial-gradient(at 20% 18%,#60a5fa29,#0000 36%),radial-gradient(at 78% 72%,#22d3ee1f,#0000 34%),radial-gradient(at 50% 44%,#f472b614,#0000 30%),linear-gradient(145deg,#030712 0%,#060b16 44%,#101124 100%);min-height:100vh;position:relative;overflow:hidden}.starfield-home:after{content:"";z-index:-1;pointer-events:none;background:radial-gradient(#0000 0 44%,#03071294 100%),linear-gradient(#ffffff07 1px,#0000 1px) 0 0/96px 96px,linear-gradient(90deg,#ffffff06 1px,#0000 1px) 0 0/96px 96px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(circle,#000 0 55%,#0000 86%);mask-image:radial-gradient(circle,#000 0 55%,#0000 86%)}:root{--twinkle-duration:4s}.stars-wrapper{pointer-events:none;width:100vw;height:100vh;position:absolute;overflow:hidden}.stars{-webkit-animation:twinkle var(--twinkle-duration) ease-in-out infinite;animation:twinkle var(--twinkle-duration) ease-in-out infinite;position:absolute;inset:0}.stars:nth-child(2){-webkit-animation-delay:calc(var(--twinkle-duration) * -.33);animation-delay:calc(var(--twinkle-duration) * -.33)}.stars:nth-child(3){-webkit-animation-delay:calc(var(--twinkle-duration) * -.66);animation-delay:calc(var(--twinkle-duration) * -.66)}@keyframes twinkle{25%{opacity:0}}.star{fill:#fff}.star:nth-child(3n){opacity:.8}.star:nth-child(7n){opacity:.6}.star:nth-child(13n){opacity:.4}.star:nth-child(19n){opacity:.2}.comet{transform-origin:50%;animation:10s linear infinite comet}@keyframes comet{0%,40%{opacity:0;transform:translate(0)}50%{opacity:1}60%,to{opacity:0;transform:translate(-100vmax)}}.comet-b{animation-delay:-3.3s}.comet-c{animation-delay:-5s}.portal-map{z-index:1;width:100vw;min-height:100vh;position:relative}.constellation-map{z-index:5;pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.constellation-map line{stroke:#dbf4ff75;stroke-width:.13px;stroke-linecap:round;filter:drop-shadow(0 0 8px #7dd3fc9e);stroke-dasharray:1;stroke-dashoffset:1px;animation:.2s linear forwards constellation-draw;animation-delay:var(--line-delay)}.card-star{left:var(--star-x);top:var(--star-y);z-index:6;width:6px;height:6px;animation:3.8s ease-in-out infinite card-star-twinkle;animation-delay:var(--star-delay);pointer-events:none;background:#fff;border-radius:50%;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 0 1px #ffffff52,0 0 12px #dbf4fff2,0 0 28px #7dd3fcbd}.card-star:before,.card-star:after{content:"";background:#ffffffb8;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.card-star:before{width:20px;height:1px}.card-star:after{width:1px;height:20px}@keyframes star-drift{0%{transform:translate(0,0)}to{transform:translate(4%,-3%)}}@keyframes constellation-draw{0%{opacity:0;stroke-dashoffset:1px}35%{opacity:.82}to{opacity:.76;stroke-dashoffset:0}}@keyframes card-star-twinkle{0%,to{opacity:.72;transform:translate(-50%,-50%)scale(.86)}48%{opacity:1;transform:translate(-50%,-50%)scale(1.22)}}@media (prefers-reduced-motion:reduce){.star-layer-one,.star-layer-two,.portal-card,.constellation-map line,.card-star{animation:none}}.back-home{color:inherit;text-decoration:none}.placeholder-page{color:#f8fbff;background:radial-gradient(circle at 20% 20%,#fb71852e,#0000 30%),linear-gradient(145deg,#080b19,#171326);place-items:center;min-height:100vh;padding:28px;display:grid}.back-home{font-weight:800;position:fixed;top:24px;left:28px}.placeholder-panel{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffff14;border:1px solid #ffffff29;border-radius:8px;width:min(640px,100%);padding:34px;box-shadow:0 28px 70px #00000042}.placeholder-panel p{color:#ebf2ffad;margin:0 0 14px;font-weight:800}.placeholder-panel h1{margin:0;font-size:clamp(30px,6vw,64px);line-height:1}
