/* AR3D atelier: one stylesheet, real controls and individual cultural artwork. */
:root{--ink:#203c35;--muted:#586b62;--jade:#307b63;--gold:#c6a66e;--line:#c9cbbb;--paper:#f5f5ed;--panel:#fafbf4e8}
*{box-sizing:border-box}html,body{margin:0;height:100%;color:var(--ink);font:15px/1.55 system-ui,"Microsoft YaHei",sans-serif}body{background:#e4e9e3}button,input,textarea,select{font:inherit;color:inherit}button,a,summary{cursor:pointer;touch-action:manipulation}button{border:0;background:none}a{color:inherit;text-decoration:none}button:disabled{opacity:.55;cursor:default}img{max-width:100%}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid #8e6c33;outline-offset:3px}
.frame{max-width:1120px;height:100vh;height:100dvh;margin:auto;display:flex;flex-direction:column;position:relative;overflow:hidden;background:linear-gradient(#ffffff73,#f5f4ebd9),url('assets/ink-landscape.png') center/cover;box-shadow:0 0 45px #29443719;isolation:isolate}#header{display:grid;grid-template-columns:44px minmax(0,1fr) 52px;align-items:center;min-height:66px;padding:env(safe-area-inset-top) 12px 0;flex-shrink:0;border-bottom:3px double #cbb990;background:linear-gradient(110deg,#fcfdf7f0,#f1f4ebde),url('assets/ink-landscape.png') right 20%/cover}#header button{min-height:44px;border:1px solid #bca77b;border-radius:50%;background:linear-gradient(#fffdf3,#e1e9df);box-shadow:inset 0 0 0 2px #fff9;color:#765e36}#header .language-switch{font-size:12px;border-radius:24px;min-height:32px}.header-title{text-align:center;font:700 19px/1.2 Georgia,SimSun,serif;letter-spacing:.01em}.header-title small{display:block;font:11px/1.2 system-ui;margin-top:4px;color:var(--muted)}
#app{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin}.page{max-width:960px;min-height:100%;margin:auto;padding:14px 18px 28px;position:relative;animation:arrive .45s ease-out both}.page>h1,.en-title{margin:0 0 4px;text-align:left}.page>h1{font:700 clamp(24px,5.5vw,32px)/1.25 SimSun,Georgia,serif}.en-title{font:11px/1.4 Georgia,serif;color:#486458;margin-bottom:13px}.page:not(.page-home):not(.page-login)>h1,.page:not(.page-home):not(.page-login)>.en-title{position:absolute;clip-path:inset(50%);height:1px;width:1px;overflow:hidden;white-space:nowrap}
#nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px;flex-shrink:0;padding:5px 9px calc(5px + env(safe-area-inset-bottom));border:3px double #bfab83;border-radius:20px 20px 0 0;background:linear-gradient(#fffef4f5,#e8ece3f5);box-shadow:0 -3px 10px #304c3820;z-index:4}#nav a{min-width:0;min-height:52px;display:flex;flex-direction:column;justify-content:center;align-items:center;border:2px solid transparent;border-radius:18px;font-size:11px;line-height:1.15;color:#695c44}#nav a.active{color:#fff8de;border-color:#e8d5a0;background:linear-gradient(140deg,#91bca1,#2d7863 65%,#26624f);box-shadow:inset 0 0 0 1px #faffee,0 2px 4px #244f3938}#nav b{display:block}#nav svg,.atelier-menu svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linejoin:round;stroke-linecap:round}#nav svg{display:block;margin-bottom:3px}
.primary,.secondary{display:block;width:100%;min-height:46px;padding:10px 20px;margin:10px 0;border:3px double #dac38f;border-radius:28px 14px 28px 14px;text-align:center;font:700 17px/1.3 SimSun,Georgia,serif;position:relative;box-shadow:inset 0 0 0 2px #fcfff1b8,0 3px 5px #37574430;transition:transform .16s,filter .16s}.primary{background:radial-gradient(ellipse at 30% 0,#cfecce90,transparent 62%),linear-gradient(#68a487,#28715c 65%,#4c8c70);color:#fffbe6;text-shadow:0 1px 2px #214b3c}.secondary{color:#584932;background:linear-gradient(#fff9e9,#ecd3a6 60%,#f7e7c5);border-color:#c6a775}.primary::before,.secondary::before{content:'';position:absolute;left:9px;top:50%;transform:translateY(-50%);width:34px;height:26px;background:url('assets/jade-ornament.svg') center/contain no-repeat}.primary::after{content:'';position:absolute;inset:3px;border:1px solid #fff7;border-radius:inherit;pointer-events:none}.primary:hover,.secondary:hover{filter:brightness(1.06)}button:active,a:active{transform:translateY(1px)}
.hint{font-size:12px;line-height:1.65;color:var(--muted);margin:9px 0}.input{width:100%;font-size:16px;line-height:1.5;border:3px double #c8d5c5;border-radius:14px;padding:10px 12px;background:linear-gradient(120deg,#ffffffeb,#edf3e6e0);box-shadow:inset 0 2px 5px #35543d0b,0 2px 3px #3a554019;margin:7px 0}textarea.input{min-height:94px;resize:vertical}.input::placeholder{color:#647266}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.card,.ornate-panel,.spec,.profile,.stats,.post,.article-body,.article-sources,.ai-options,.design-intentions{border:3px double #c8b789;border-radius:18px;background:linear-gradient(125deg,#fffff7e8,#eaf0e7e8);box-shadow:inset 0 0 0 2px #fff9,0 3px 7px #3454431a}.card{position:relative;padding:12px;text-align:left}.card h3{font:700 17px/1.3 SimSun,Georgia,serif;margin:5px 0}.card p{font-size:12px;margin:4px 0}.badge{display:inline-block;font-size:11px;border:1px solid #b6bd9e;border-radius:14px;padding:3px 8px;background:#f8f9ed;color:#53624d}.price{font:700 19px Georgia,SimSun,serif;color:#2f7155}.price small{font:12px system-ui}.chips{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0}.chips button,.live-angles button{min-height:35px;padding:5px 13px;border:2px solid #d3c3a1;border-radius:24px;background:linear-gradient(#fffdf3,#e5e9de);box-shadow:inset 0 0 0 1px #fff}.chips button.selected,.chips button[aria-pressed=true],.live-angles button[aria-pressed=true]{background:linear-gradient(#80b299,#347c64);border-color:#d0b87f;color:#fffee8}
/* Spatial model stages, with the actual supplied model layered above the rings. */
.spatial-stage{position:relative;isolation:isolate;border:3px double #c4af7e;border-radius:28px 14px 28px 14px;background:radial-gradient(ellipse at 50% 70%,#e3eddd78,transparent 65%),url('assets/ink-landscape.png') center/cover;box-shadow:inset 0 0 0 2px #fffff2,0 5px 9px #284e3822;overflow:hidden}.spatial-stage::before{content:'';position:absolute;inset:12px;border:1px solid #c7eed9;border-radius:22px 10px 22px 10px;box-shadow:inset 0 0 12px #89d7bc8c,0 0 8px #96d2bc90;pointer-events:none;z-index:-1}.space-ring{position:absolute;width:88%;height:18%;left:6%;bottom:14%;border:2px solid #e3fff4;border-radius:50%;box-shadow:0 0 8px #65caaa,inset 0 0 7px #7ee1c9;transform:rotate(-4deg);animation:spatial-pulse 4s ease-in-out infinite;pointer-events:none;z-index:0}.space-ring::after{content:'';position:absolute;inset:-13px;border:1px dashed #5ebba7;border-radius:50%;box-shadow:0 0 12px #98e8cf}.atelier-stage{height:clamp(260px,38dvh,350px);display:grid;grid-template:minmax(0,1fr)/minmax(0,1fr);padding:10px}.atelier-stage model-viewer,.atelier-art{grid-area:1/1;position:relative;width:100%;height:100%;min-width:0;min-height:0;z-index:1}.atelier-art{object-fit:contain;mix-blend-mode:multiply}.atelier-art[hidden]{display:none}.ar-link{position:absolute;right:12px;top:15px;padding:6px 12px;border:3px double #d8c395;background:linear-gradient(#74b39a,#347d68);color:#fffde9;border-radius:22px;font:700 12px/1.25 Georgia,SimSun,serif;box-shadow:0 2px 6px #243f3533;z-index:3}.app-home-hero>.primary{margin:12px 0}.home-shortcuts{display:grid;grid-template-columns:1fr 1fr;gap:10px}.home-shortcuts a{position:relative;min-width:0;border:3px double #d1be93;border-radius:17px 8px 17px 8px;background:#fbfcf2;overflow:hidden;box-shadow:inset 0 0 0 2px #fff,0 3px 5px #36564324;animation:arrive .6s both}.home-shortcuts a:nth-child(2){animation-delay:.08s}.home-shortcuts a:nth-child(3){animation-delay:.16s}.home-shortcuts a:nth-child(4){animation-delay:.24s}.home-shortcuts img{display:block;width:100%;height:66px;object-fit:cover}.home-shortcuts span,.home-shortcuts small{display:block;padding-inline:9px;background:#f8faecdd}.home-shortcuts span{font:700 16px/1.4 SimSun,Georgia,serif;padding-top:3px}.home-shortcuts small{font:10px/1.3 Georgia;padding-bottom:5px;color:#526559}
/* Motifs form a real selection and connected summary. */
.journey{display:flex;justify-content:space-between;gap:5px;list-style:none;padding:0;margin:0 0 14px;font-size:12px}.journey li{display:flex;align-items:center;gap:5px;flex:1}.journey b{display:grid;place-items:center;width:27px;height:27px;flex:none;border:3px double #c8ae75;border-radius:50%;background:#f6edd9;font:18px Georgia}.journey .current b{background:#4b9476;color:#fff8e4}.journey li+li::before{content:'→';color:#649a83}.symbol-grid .card{padding:0;overflow:hidden}.motif-image{object-fit:cover}.symbol-grid .motif-image{display:block;width:100%;height:112px}.symbol-grid .card>div{padding:5px 8px 8px}.symbol-grid h3{margin:0;font-size:17px}.symbol-grid p{font-size:11px;color:#4d6556;margin:3px 0 0;line-height:1.35}.card.selected{border-color:#63b49b;box-shadow:inset 0 0 0 2px #dbffe9,0 0 9px #56ba9f77}.card.selected::after{content:'✓';position:absolute;right:7px;top:7px;display:grid;place-items:center;width:25px;height:25px;background:#367f65;border:2px solid #fff5d5;border-radius:50%;color:#fff}.symbol-connections{display:flex;justify-content:center;height:28px;margin:-1px 30px 0}.symbol-connections i{width:35%;border:3px double #84cbb4;border-top:0;border-radius:0 0 0 35px;box-shadow:0 3px 6px #b7e9d2}.symbol-connections i+i{border-radius:0 0 35px 0}.combination{text-align:center;padding:9px 12px;position:relative}.combination::before,.combination::after{content:'';position:absolute;top:-7px;left:4px;width:53px;height:30px;background:url('assets/jade-ornament.svg') center/contain no-repeat}.combination::after{left:auto;right:4px;transform:scaleX(-1)}.combination>strong{font:700 16px SimSun,Georgia,serif}.combination p{font-size:11px;margin:6px 0 0;color:#617060}.motif-strip{display:flex;justify-content:center;gap:12px;min-height:60px;margin-top:8px}.motif-strip span{display:flex;flex-direction:column;align-items:center;font-size:11px}.motif-strip img{width:48px;height:46px;border:2px solid #d1bc91;border-radius:10px}
/* AI: the scan runs only while a real request is pending. */
.steps{display:flex;list-style:none;justify-content:space-between;gap:7px;padding:7px 0;margin:0 0 10px}.steps li{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:6px;border:2px solid #ccd2bd;border-radius:25px;background:linear-gradient(#fffef4,#dce9dd);font-size:12px}.steps li.current{border-color:#a5c9ad;background:linear-gradient(#ddf4db,#6fa98b);box-shadow:0 0 8px #aedab67f}.steps b{font:20px Georgia}.page-ai label{font-weight:700}.selected-tags{display:flex;flex-wrap:wrap;gap:6px}.selected-tags>span{display:flex;align-items:center;gap:5px;padding:3px 4px;border:2px solid #d7ccb1;border-radius:9px;background:#faffef;font-size:12px}.selected-tags img{width:30px;height:29px;border-radius:5px}.selected-tags button{font-size:19px;width:22px;padding:0}.ai-main-actions{margin-top:8px}.analysis-preview{height:200px;margin:12px 0}.analysis-preview .customer-art{height:100%}.analysis-preview>span{position:absolute;bottom:9px;left:10px;z-index:2;padding:3px 8px;border-radius:10px;background:#f8ffefcb;font-size:11px}.working{padding:12px;border:2px solid #7cae97;border-radius:14px;background:#e1f1e3;font-size:13px}.working::before{content:'';display:block;height:3px;margin-bottom:8px;background:linear-gradient(90deg,transparent,#3b8e78,transparent);animation:scan 1.6s ease-in-out infinite}.page-ai:has(.working) .analysis-preview::after{content:'';position:absolute;left:0;right:0;height:3px;top:0;background:#c7ffe6;box-shadow:0 0 18px 4px #44c5ac;animation:scan-down 2s linear infinite}.error{color:#8f362a;padding:10px;background:#fff1e5;border:1px solid #cba58f;border-radius:10px}.ai-options,.design-intentions{padding:10px 12px;margin:10px 0}.ai-options summary,.design-intentions summary{font-size:13px;font-weight:700}.hint summary{cursor:pointer}
/* Current model and independent real texture controls. */
.design-workbench{display:grid;gap:10px}.live-model{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr) auto;min-width:0}.live-model model-viewer,.live-model .customer-art{grid-area:1/1;width:100%;height:clamp(225px,33dvh,310px);min-width:0;z-index:1}.live-model model-viewer{visibility:hidden}.live-model.model-ready model-viewer{visibility:visible}.live-model.model-ready .customer-art{visibility:hidden}.customer-art{display:grid;place-items:center;min-width:0;overflow:hidden}.customer-art .goat{width:100%;height:100%;min-height:0;min-width:0;object-fit:contain;mix-blend-mode:multiply}.live-angles{display:none;grid-row:2;position:relative;z-index:3;padding:5px 6px;gap:4px;background:#f6f8eddd;justify-content:center}.model-ready .live-angles{display:flex}.live-angles button{flex:1;font-size:12px;min-height:33px;padding:4px 8px}.part-label{position:absolute;z-index:2;font:12px Georgia,SimSun,serif;padding:3px 7px;border-radius:6px;background:#ffffedb5;color:#284a3d;pointer-events:none}.part-label::before{content:'';position:absolute;width:22px;height:1px;background:#46826a;top:50%}.part-wool{right:9px;top:24%}.part-wool::before{right:100%;transform:rotate(-22deg)}.part-scarf{left:8px;top:58%}.part-scarf::before{left:100%;transform:rotate(16deg)}.live-model>.space-ring{bottom:22%}.model-controls{border:3px double #c8bb98;border-radius:18px;background:#f7faeeec;padding:3px 9px;box-shadow:0 3px 5px #36564317}.scarf-controls{padding:5px 0;border-bottom:1px solid #cdd5bf;display:flex;gap:7px;align-items:center}.scarf-controls:last-child{border:0}.scarf-controls strong{font:700 12px/1.3 SimSun,Georgia,serif;min-width:47px;max-width:59px}.scarf-swatches{display:flex;flex:1;min-width:0;gap:3px;flex-wrap:wrap}.scarf-swatches button{position:relative;padding:3px 2px;display:flex;flex-direction:column;align-items:center;gap:3px;border:1px solid transparent;border-radius:11px;min-width:35px;flex:1;font-size:10px;line-height:1.1}.material-pearl{font-style:normal;display:block;position:relative;width:32px;height:32px;border:2px solid #d2be94;border-radius:50%;background:radial-gradient(circle at 30% 20%,#fff9,transparent 48%),var(--pearl,#8a9b85);box-shadow:inset 0 0 0 1px #fff9,inset -3px -4px 6px #31423938,0 2px 3px #35513e2b}.material-pearl::after{content:'';position:absolute;inset:0;background:url('assets/jade-ornament.svg') center/cover;opacity:.7}.wool-pearl::after{content:'';background:repeating-radial-gradient(ellipse at 20% 40%,transparent 0 5px,#fff8 6px 7px,transparent 8px 10px);border-radius:50%}.pattern-pearl{background:url('assets/art-cloud.png') center/cover}.pattern-pearl.meander{background-image:url('assets/art-meander.png')}.pattern-pearl::after{display:none}.scarf-swatches button[aria-pressed=true]{border-color:#71a58d;background:#e0efdd}.scarf-swatches button[aria-pressed=true] .material-pearl{outline:2px solid #388b6e;outline-offset:2px}.scarf-swatches button[aria-pressed=true]::after{content:'✓';position:absolute;right:1px;top:0;width:14px;height:14px;border-radius:50%;background:#357d63;color:white;font-size:10px;text-align:center}.spec{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px;margin:9px 0;font-size:12px}.spec label{min-width:58px}.config-select,.setting-select{display:none}.choice-buttons{display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end}.choice-buttons button{min-height:34px;min-width:36px;padding:5px 8px;border:1px solid #b7c5ab;border-radius:12px;background:linear-gradient(#fffff5,#e4ebd9);font-size:12px}.choice-buttons .chosen{background:#b7d6bb;border-color:#6d9c7c}.color-pearl i{display:block;width:22px;height:22px;border-radius:50%;background:radial-gradient(circle at 35% 25%,#fffc,transparent 60%),var(--pearl);box-shadow:inset 0 -2px 3px #0003;border:1px solid #a99a70}.choice-buttons .color-pearl{min-width:30px;padding:3px;background:none}.color-pearl.chosen{outline:2px solid #5b9470;outline-offset:-1px}
/* Studio catalogue, authentic editorial content and local account state. */
.page-login{max-width:500px;text-align:center}.page-login>h1,.page-login>.en-title{text-align:center}.welcome-seal{display:none}.page-login>.landscape{height:clamp(280px,43dvh,380px);background:radial-gradient(ellipse at 50% 75%,#91d9ba33,transparent 65%),url('assets/ink-landscape.png') center/cover;border:3px double #c6b586;border-radius:26px}.welcome-note{font-size:13px}.product{padding:7px;overflow:hidden}.product .view{width:100%;text-align:left;padding:0}.product img{display:block;width:100%;aspect-ratio:1;height:auto;object-fit:contain;border-radius:12px;background:#f4edda}.product h3{font-size:15px}.product .price{font-size:13px}.favorite{position:absolute;right:7px;top:7px;border:1px solid #c8b893;border-radius:50%;width:30px;height:30px;background:#faffefdc;font:22px/1 Georgia;z-index:2}.favorite.on{color:#9b403a;background:#fae9dc}.color-intent{display:flex;gap:6px;align-items:center;font-size:11px;margin:4px 0;color:#687260}.color-intent i{width:24px;height:6px;background:var(--intent);border-radius:9px}.profile{display:flex;align-items:center;gap:12px;padding:13px;margin-bottom:12px}.profile h2{font:700 20px SimSun,Georgia,serif;margin:0}.profile p{font-size:12px;margin:4px 0}.avatar{width:52px;height:52px;display:grid;place-items:center;flex-shrink:0;border:3px double #d0ba8b;border-radius:50%;font:34px Georgia;background:linear-gradient(#fff5dc,#b9c8ad);color:#faffef}.stats{display:flex;justify-content:space-around;padding:13px 5px;margin:12px 0}.stats button{font-size:12px}.stats b{display:block;font:26px Georgia;color:#3a7155}.menu-row{display:flex;justify-content:space-between;align-items:center;width:100%;text-align:left;padding:12px 7px;min-height:44px;border-bottom:1px solid #bdc8af;font-size:13px}.menu-row small{display:block;overflow-wrap:anywhere}.saved-work{display:flex;gap:10px;align-items:center;width:100%;text-align:left;padding:8px;border:2px solid #c5cbb6;border-radius:13px;background:#f9fcee;margin:8px 0}.saved-work img{width:65px;height:73px;object-fit:contain;border-radius:9px}.saved-work>span{flex:1;min-width:0}.saved-work small{display:block;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;font-size:11px;color:#687260}.works-list h3{font:700 19px SimSun,Georgia,serif}.community-grid{columns:2;column-gap:12px}.post{position:relative;break-inside:avoid;overflow:hidden;margin-bottom:12px}.post .view{display:block;width:100%;padding:0;text-align:left}.post-cover{height:145px;background-size:cover;background-position:center;color:transparent;font-size:0}.post:nth-child(2n) .post-cover{height:180px}.post h3{font:700 15px/1.45 SimSun,Georgia,serif;margin:8px}.post-meta{font-size:10px;color:#687260;padding:0 35px 9px 8px}.post .favorite{top:auto;bottom:5px;width:27px;height:27px;font-size:19px}.article-cover{height:220px;border:3px double #ccb37c;border-radius:20px;background-size:cover;background-position:center;color:transparent;font-size:0;box-shadow:0 3px 7px #37553a20}.article-body{padding:14px;margin:12px 0}.article-body h2{font:700 24px/1.4 SimSun,Georgia,serif;margin:0 0 9px}.article-body p{font-size:15px;line-height:1.95}.article-sources{padding:12px;font-size:12px}.article-sources h3{font-size:13px;margin:0 0 6px}.article-sources a{display:block;text-decoration:underline;margin:6px 0;overflow-wrap:anywhere}.inquiry-summary{display:flex;gap:12px;padding:10px}.inquiry-summary>img{width:100px;height:150px;object-fit:contain;background:#f7efdc;border-radius:12px}.inquiry-summary>div{flex:1;min-width:0}.inquiry-summary p{font-size:11px;overflow-wrap:anywhere}.inquiry-symbols{margin:12px 0;padding:10px;border:2px solid #c9c6a9;border-radius:15px;background:#f9fcee}.inquiry-symbols h3{font:700 15px SimSun,Georgia,serif;margin:0 0 9px}.inquiry-symbols>div{display:flex;gap:10px}.inquiry-symbols span{font-size:11px;text-align:center;display:flex;flex-direction:column}.inquiry-symbols img{width:50px;height:44px;border:2px solid #d2c099;border-radius:9px}.inquiry-history{padding:10px;border:2px solid #c5cbb6;border-radius:12px}.inquiry-history small{white-space:normal;max-width:100%}
.ar-stage model-viewer,.ar-stage .customer-art{height:clamp(285px,44dvh,440px)}.ar-stage .live-angles{display:none}.spatial-caption{position:absolute;bottom:12px;left:12px;z-index:3;font-size:11px;background:#f8fff0d9;border:1px solid #abd1b6;border-radius:14px;padding:3px 9px}.ar-info{padding:10px 12px;margin-top:13px}.ar-info p{font-size:12px;margin:6px 0}.ar-stage .space-ring{bottom:14%}
dialog{max-width:min(92vw,600px);max-height:88dvh;overflow:auto;padding:20px;border:3px double #ccb785;border-radius:20px;background:#f7f8ed;color:var(--ink)}dialog::backdrop{background:#203d3677}.model-preview model-viewer{width:100%;height:360px}.model-preview h2,.atelier-menu h2{font:700 23px SimSun,Georgia,serif}.model-angles[hidden]{display:none}#toast{display:none;position:absolute;bottom:85px;left:50%;transform:translateX(-50%);z-index:10;max-width:90%;width:max-content;padding:9px 15px;border:2px solid #d4c39c;border-radius:15px;background:#2d6855;color:#ffffed;font-size:12px;box-shadow:0 3px 10px #263e3550}#toast.show{display:block}.board{padding:20px}.boards{display:grid;grid-template-columns:repeat(auto-fit,390px);gap:20px}.boards iframe{width:390px;height:850px;border:0}.embed .frame{max-width:none}.no-motion *,.no-motion *::before,.no-motion *::after{animation:none!important;transition:none!important}
@keyframes arrive{from{opacity:.5;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes spatial-pulse{50%{transform:rotate(3deg) scale(.94);box-shadow:0 0 16px #4bdcb3,inset 0 0 12px #8affd6}}@keyframes scan{50%{transform:scaleX(.3);filter:brightness(1.4)}}@keyframes scan-down{from{top:0}to{top:100%}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}
@media(min-width:760px){.page{padding:22px 30px 35px}.page-home{display:grid;grid-template-columns:1.25fr 1fr;gap:12px 26px;align-content:start}.page-home>h1,.page-home>.en-title{grid-column:1/-1}.page-home>.en-title{margin-bottom:2px}.app-home-hero{grid-column:1}.atelier-stage{height:385px}.home-shortcuts{grid-column:2;align-self:start;gap:14px}.home-shortcuts img{height:141px}.home-shortcuts span{font-size:19px}.home-shortcuts small{font-size:11px;padding-bottom:8px}.design-workbench{grid-template-columns:1.35fr 1fr;align-items:center;gap:22px}.live-model model-viewer,.live-model .customer-art{height:360px}.scarf-controls{padding:14px 0;display:block}.scarf-controls strong{display:block;margin-bottom:8px;max-width:none;font-size:16px}.scarf-swatches button{font-size:11px}.material-pearl{width:38px;height:38px}.material-pearl::after{font-size:29px;line-height:33px}.page-elements{max-width:800px}.symbol-grid .motif-image{height:180px}.symbol-grid h3{font-size:21px}.symbol-grid p{font-size:13px}.motif-strip img{width:65px;height:55px}.page-ai{max-width:760px}.analysis-preview{height:255px}.page-market .grid{grid-template-columns:repeat(3,minmax(0,1fr))}.community-grid{columns:3}.post-cover,.post:nth-child(2n) .post-cover{height:190px}.page-account,.page-inquiry,.page-article,.page-ar{max-width:760px}#nav{padding-inline:calc((100% - 700px)/2)}.ar-stage model-viewer,.ar-stage .customer-art{height:420px}}
@media(max-width:389px){.page{padding:12px 13px 24px}.header-title{font-size:18px}.atelier-stage{height:clamp(250px,36dvh,295px)}.home-shortcuts img{height:60px}.home-shortcuts span{font-size:15px}.scarf-controls{gap:3px}.scarf-controls strong{min-width:42px;font-size:11px}.scarf-swatches button{min-width:30px;font-size:9px}.material-pearl{width:29px;height:29px}.material-pearl::after{font-size:22px;line-height:24px}.live-model model-viewer,.live-model .customer-art{height:clamp(215px,32dvh,275px)}.symbol-grid .motif-image{height:105px}.ar-stage model-viewer,.ar-stage .customer-art{height:310px}}

/* Primary design actions stay next to the current model. */
.design-primary-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.design-primary-actions button{font-size:14px;padding:10px 13px;min-height:44px}.production-preferences{padding:10px 12px;margin:10px 0;border:3px double #c8b789;border-radius:15px;background:#f8faeeed}.production-preferences>summary{font-size:13px;font-weight:700}.production-preferences .design-intentions{box-shadow:none}

.inquiry-summary>.inquiry-mini-model{width:112px;flex:0 0 112px}.inquiry-mini-model .live-model model-viewer,.inquiry-mini-model .live-model .customer-art{height:170px}.inquiry-mini-model .live-angles,.inquiry-mini-model .ar-link,.inquiry-mini-model .part-label{display:none}.market-material-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-top:15px}.market-material-strip img{width:100%;height:72px;object-fit:cover;border:3px double #c8b789;border-radius:16px}
/* Vector relief ornaments are decorative and do not enter button names. */
.page-account>.card{width:100%}
@media(min-width:760px){.page-elements{max-width:900px}.symbol-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.symbol-grid .motif-image{height:145px}.symbol-grid h3{font-size:18px}}

.model-fallback-note{position:absolute;bottom:10px;left:10px;right:10px;z-index:2;font-size:10px;line-height:1.35;padding:4px 7px;background:#fcfff0e8;border:1px solid #c5c9ac;border-radius:10px}.model-ready .model-fallback-note{display:none}.inquiry-mini-model .model-fallback-note{font-size:9px;left:3px;right:3px;bottom:3px}.live-model:not(.model-ready) .part-label{display:none}

.ar-stage .model-fallback-note{top:14px;bottom:auto}

.ar-stage:not(.model-ready) .spatial-caption{display:none}.symbol-grid:not(:has(.selected))+.symbol-connections{opacity:0}.symbol-connections i{animation:connection-glow 3s ease-in-out infinite}.symbol-grid .selected{animation:motif-pick .4s ease-out}@keyframes connection-glow{50%{box-shadow:0 3px 12px #70d6b5;border-color:#51ad91}}@keyframes motif-pick{from{box-shadow:0 0 0 5px #82cfb388}to{box-shadow:0 0 9px #56ba9f77}}
.community-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px;border:1px solid #c9b684;border-radius:20px;background:linear-gradient(115deg,#eef5eced,#fbf4debb),url('assets/ink-landscape.png') center/cover;box-shadow:0 8px 24px #294e3b0c}.community-toolbar h1{margin:0;font:600 20px/1.5 SimSun,Georgia,serif}.community-toolbar small{display:block;color:#647668;font-size:12px}.community-toolbar .primary{width:auto;min-width:90px;margin:0;padding:10px 18px}.community-search{display:flex;gap:10px;align-items:center;margin-top:12px}.community-search .input{margin:0;min-width:0}.community-search button{white-space:nowrap;padding:10px}.community-composer{padding:20px;border:1px solid #c5b680;border-radius:20px;background:#fffdf6;box-shadow:0 10px 30px #294e3b12;margin:14px 0;animation:arrive .3s ease}.composer-head,.composer-tools,.composer-footer{display:flex;justify-content:space-between;gap:12px;align-items:center}.composer-head{margin-bottom:14px}.community-composer label{font-size:13px}.community-composer textarea{min-height:130px}.composer-tools{flex-wrap:wrap}.composer-tools select{width:auto}.upload-chip{cursor:pointer;border:1px dashed #a1b5a0;border-radius:12px;padding:12px}.composer-photo{display:block;max-height:200px;margin:12px auto;border-radius:12px}.composer-footer small{font-size:12px;color:#6e7966}.composer-footer .primary{width:auto;padding:9px 20px;white-space:nowrap}.community-cover{display:block;width:100%;height:auto;max-height:400px;object-fit:cover}.community-author{display:flex;gap:7px;align-items:center;padding:8px 10px;font-size:12px}.community-author>span:nth-child(2){flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.author-mark{display:grid;place-items:center;border:1px solid #c5b384;width:30px;height:30px;border-radius:50%;background:linear-gradient(#e7f0e4,#d4e2d4);color:#395e49;flex-shrink:0}.community-author button[aria-pressed=true]{color:#ac574b}.community-text-cover{padding:20px;background:linear-gradient(145deg,#e6f0e6,#f7efd9);min-height:150px}.community-text-cover span{font-size:11px;color:#537760}.community-text-cover p{font:18px/1.7 SimSun,serif;overflow-wrap:anywhere}.community-status{padding:12px;border:1px solid #aebfa8;border-radius:12px;background:#eef3e8}.community-empty{padding:30px;text-align:center}.community-empty button{display:block;margin:16px auto;color:#31755a}.editorial-label{font:600 16px/1.5 SimSun,serif;margin:20px 0 10px}.page-community>h1,.page-community>.en-title{display:none}.page-community>.community-grid:empty{display:none}.page-community>h1~.chips{margin-top:12px}.community-detail{max-width:720px;margin:auto}.detail-author{display:flex;align-items:center;gap:10px;padding:8px 0 18px}.detail-author small{display:block;font-size:12px;color:#6b796a}.detail-image{display:block;width:100%;max-height:520px;object-fit:contain;border-radius:18px;background:#f2efdf}.community-detail h1{font:600 25px/1.5 SimSun,serif}.note-content,.note-comments p{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8}.note-comments{margin-top:24px;border-top:1px solid #c6c5ae;padding-top:12px}.note-comments article{border-bottom:1px solid #dcdfcf;padding:12px 0}.note-comments article strong{font-size:13px;color:#477259}.note-comments p{font-size:14px;margin:6px 0}.page-community .customer-post h3{overflow-wrap:anywhere}.page-community .post .view{display:block}.community-detail .chips button{min-width:75px}@media(max-width:480px){.community-toolbar{padding:14px}.community-toolbar h1{font-size:17px}.composer-footer{align-items:flex-start}.community-composer{padding:14px}.composer-tools select{max-width:140px}.community-text-cover{padding:14px}.community-text-cover p{font-size:16px}}
.page-community .primary::before,.community-detail .primary::before{display:none}.community-toolbar .primary,.composer-footer .primary{min-width:100px}.community-empty:has(+*){margin-block:12px}
/* Isolated account candidate: use the existing atelier palette and controls. */
.cloud-panel{margin:20px 0;padding:20px;border:1px solid #ded6c4;border-radius:16px;background:#fffdf7;overflow-wrap:anywhere}
.cloud-panel h2,.cloud-panel h3{margin:0 0 14px}.cloud-panel label{display:block;margin:12px 0}.cloud-panel .input{display:block;box-sizing:border-box;width:100%;margin:7px 0}.cloud-panel form>.primary{margin-top:16px;width:100%}.cloud-panel .chips{gap:8px;flex-wrap:wrap}.cloud-panel button{min-height:42px}.cloud-panel small{display:block;color:#70685c}.cloud-work{padding:14px 0;border-bottom:1px solid #e5dece}.cloud-work h4{margin:0 0 8px}.cloud-work p{white-space:pre-wrap}.cloud-panel .import-choice{display:flex;gap:12px;align-items:flex-start}.import-choice input{margin-top:5px;flex:none}.recovery-panel{border:2px solid #a87a38}.recovery-code{display:block;user-select:all;white-space:normal;overflow-wrap:anywhere;background:#f5eedf;padding:14px;margin:14px 0}.account-status:not(:empty){padding:14px;border:1px solid #a87a38;border-radius:12px;margin:10px 0;background:#fff8e7}.cloud-panel [role=status]:not(:empty){margin:12px 0;color:#725423}.cloud-panel details{margin:12px 0}.cloud-panel a.primary{display:inline-block;box-sizing:border-box;max-width:100%;text-decoration:none}
@media(max-width:480px){.cloud-panel{padding:16px}.cloud-panel .chips>button{flex:1 1 auto}.cloud-work .chips{display:flex}.cloud-panel form>.primary{white-space:normal}}

.cloud-work{display:flow-root;padding:14px 0;min-height:104px}.account-model-thumb{float:left;width:94px;height:116px;object-fit:cover;border:3px double #bda879;border-radius:12px;margin:0 16px 10px 0;box-shadow:0 3px 8px #81704a24}.design-summary{font-size:13px;color:#70624b;margin:6px 0!important}.cloud-panel .cloud-work h4{font-size:16px}.cloud-panel .cloud-work p{margin:8px 0}.cloud-panel{background:linear-gradient(135deg,#fffdf5f2,#f2f4e6d9);border:3px double #bda879;box-shadow:inset 0 0 0 2px #fff9,0 3px 10px #81704a17}.cloud-panel button,[data-account=logout]{border:3px double #bda879;border-radius:18px;padding:7px 14px;background:linear-gradient(#fffdf7,#eee9d8);box-shadow:inset 0 0 0 1px #fff,0 2px 3px #806b3720;cursor:pointer}.cloud-panel .primary{background:linear-gradient(#518f7c,#286d58);color:#fff}.cloud-panel .chips{margin:10px 0}.cloud-panel:has(.cloud-work){padding-top:16px;padding-bottom:12px}@media(max-width:480px){.account-model-thumb{width:76px;height:100px;margin-right:12px}.cloud-work .chips{clear:both}.cloud-panel{margin:14px 0}.cloud-panel .cloud-work h4{font-size:15px}}

.submitted-design{padding:10px 0}.submitted-design summary{cursor:pointer;font-weight:600}.submitted-design dl{margin:12px 0}.submitted-design dl>div{display:flex;gap:12px;padding:6px 0;border-bottom:1px solid #ded6c4}.submitted-design dt{flex:0 0 42%;color:#70624b}.submitted-design dd{margin:0;overflow-wrap:anywhere}.submitted-design .hint{font-size:12px}

.ar-stage model-viewer > [slot="ar-button"]{position:absolute;right:14px;bottom:14px;width:auto;margin:0}
.atelier-preview-actions{position:absolute;top:15px;right:12px;z-index:3;display:flex;align-items:center;gap:7px}.atelier-preview-actions .ar-link{position:static;white-space:nowrap}
