@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{font-family:'DM Sans',sans-serif;color:#30342d;background:#f7f8f4;font-synthesis:none;--green:#344b36;--muted:#85887d;--line:#e7e9e1}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,label.drop{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.55;cursor:wait}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #9faf8a;outline-offset:3px}aside{width:226px;position:fixed;inset:0 auto 0 0;border-right:1px solid var(--line);background:#fff;padding:34px 20px;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--green);font-size:34px;padding:0 10px}.brand span{font-family:Manrope,sans-serif;font-size:22px;font-weight:800;letter-spacing:-1px}.brand small{display:block;font-size:9px;letter-spacing:4px;font-weight:500;margin-top:3px}.workspace{font-size:9px;letter-spacing:1.8px;color:#96998f;margin:51px 14px 17px}.nav{display:flex;align-items:center;gap:13px;border:0;background:none;color:#7a8074;text-align:left;padding:14px;width:100%;border-radius:7px;font-size:17px;margin-bottom:7px}.nav span{font-size:12px;font-weight:600}.nav.active{background:#edf1e7;color:var(--green)}.nav b{margin-left:auto;font-size:10px;background:#e3e7dc;padding:3px 6px;border-radius:4px}.side-bottom{margin-top:auto}.local-dot{font-size:10px;color:#748367;margin-left:14px}.local-dot:before,.live-dot{content:'';display:inline-block;width:6px;height:6px;background:#90a37b;border-radius:50%;margin-right:7px}.side-bottom p{font-size:13px;line-height:1.7;color:#91958b;padding:6px 14px 20px;border-bottom:1px solid var(--line)}main{margin-left:226px;padding:0 42px}header{height:83px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;font-size:11px;color:#92968b}header i{font-style:normal;margin:0 12px;color:#b4b8ad}header strong{color:#565e4f;font-weight:500}.connection{background:#fff;border:1px solid #dce1d4;color:#627454;padding:9px 13px;border-radius:30px;font-size:10px}.intro{display:flex;justify-content:space-between;align-items:center;margin:38px 0 30px}.eyebrow{font-size:9px;letter-spacing:2px;font-weight:600;color:#869274}h1{font-family:Manrope,sans-serif;font-size:30px;font-weight:500;letter-spacing:-1.4px;margin:12px 0}h1 em{font-family:Georgia,serif;font-weight:400;color:#71805d}p{line-height:1.6}.intro p{font-size:12px;color:#93968c;margin:0}.powered{font-size:10px;color:#8a947f;border:1px solid #e3e7db;border-radius:5px;padding:10px;white-space:nowrap}.studio-grid{display:grid;grid-template-columns:minmax(330px,430px) minmax(340px,1fr);gap:23px;align-items:start}.card{background:white;border:1px solid var(--line);border-radius:12px}.controls{padding:24px}.section-title{display:flex;align-items:center;gap:9px;margin-bottom:18px}.section-title h2{font-size:12px;margin:0;font-weight:600}.step{font-size:9px;color:#889879;background:#f0f3eb;padding:5px;border-radius:4px}.drop{border:1px dashed #cbd4bf;background:#fafbf7;min-height:174px;border-radius:8px;display:flex;align-items:center;justify-content:center;text-align:center;cursor:pointer;position:relative;overflow:hidden}.drop.drag{border:2px solid #607c49;background:#f0f5e8}.drop input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%}.upload-icon{font-size:25px;margin-bottom:12px;color:#738263}.drop strong{font-size:11px;font-weight:500}.drop p{font-size:11px;margin:5px 0 13px;color:#939a88}.drop u{color:#687d56;text-underline-offset:3px}.drop small{font-size:9px;color:#a2a798}.drop img{width:100%;height:174px;object-fit:contain}.tip{font-size:9px;color:#8b9580;margin:10px 0 26px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin-bottom:18px}label,.field-label{display:block;font-size:10px;color:#6b7362}select,textarea,input[type=password]{width:100%;border:1px solid #e2e6da;background:#fff;color:#52594b;border-radius:5px;padding:10px;margin-top:8px;font-size:11px}select{height:37px}.moods{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:9px 0 19px}.mood{border:1px solid #e6e8e1;background:white;padding:6px 6px 10px;border-radius:7px;font-size:10px;color:#58624e;text-align:left}.mood.selected{border-color:#82976c;background:#f8faf4;box-shadow:0 0 0 1px #82976c}.swatch{height:53px;display:flex;align-items:center;justify-content:center;font-size:32px;border-radius:4px;margin-bottom:8px}.minimal{background:linear-gradient(120deg,#e5dfd1,#faf5e8);color:#b8a67f}.bridal{background:linear-gradient(120deg,#5b2730,#934a47);color:#dbb475}.editorial{background:linear-gradient(120deg,#292c29,#626759);color:#c7cfb6}.mood small{display:block;font-size:8px;color:#989f8f;margin-top:3px}details{border-top:1px solid var(--line);padding:15px 0;margin-top:4px}summary{cursor:pointer;list-style:none;font-size:10px;color:#7d8771}summary span{float:right}details label{margin-top:17px}details input[type=file]{display:block;font-size:10px;max-width:100%;margin-top:10px}textarea{resize:vertical;min-height:70px}.generate{width:100%;background:var(--green);border:0;border-radius:6px;padding:14px 17px;color:white;font-size:12px;text-align:left;margin-top:4px}.generate span{float:right}.footnote{text-align:center;color:#9aa18f;font-size:8px;margin:10px 0 0}.preview{overflow:hidden}.preview-head{display:flex;align-items:center;justify-content:space-between;padding:20px;font-size:11px;border-bottom:1px solid var(--line)}.preview-head>span{font-size:8px;letter-spacing:1px;color:#a2a894}.canvas{background:radial-gradient(ellipse at 50% 45%,#fffef9 0%,#f0f2e9 80%);min-height:560px;display:flex;align-items:center;justify-content:center;position:relative;text-align:center;padding:20px}.canvas-art{height:140px;position:relative;width:160px;margin:0 auto 24px}.orbit{position:absolute;width:116px;height:116px;border:1px solid #d9decd;border-radius:50%;top:10px;left:20px}.orbit:after{content:'';position:absolute;inset:12px;border:1px solid #e2e6d7;border-radius:50%}.gem{position:absolute;inset:0;font-family:Georgia,serif;font-size:110px;line-height:130px;color:#adb995;transform:rotate(-12deg)}.spark{position:absolute;right:6px;top:5px;color:#87966e;font-size:30px}.empty h2{font-family:Georgia,serif;font-size:33px;font-weight:400;line-height:1.2;color:#566449;margin:18px 0}.empty p{font-size:11px;color:#96a087}.empty .eyebrow{font-size:8px}.mini-steps{font-size:9px;color:#929e84;margin-top:33px}.mini-steps span{margin:0 16px;color:#bdc5af}.preview-footer{padding:18px 20px;display:flex;align-items:center;justify-content:space-between;min-height:58px;font-size:10px;color:#949d89}.download{font-size:10px;color:var(--green);text-decoration:none;background:#eef2e8;padding:9px 12px;border-radius:5px}.accuracy{font-size:9px;color:#9aa28f;border-top:1px solid var(--line);padding:12px 20px;margin:0}#result{max-width:100%;max-height:650px;object-fit:contain;border-radius:5px}footer{display:flex;justify-content:space-between;margin:30px 0 22px;font-size:8px;letter-spacing:1.6px;color:#a5ac9a}footer span{letter-spacing:0}.file-row{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:8px;font-size:10px}.file-row span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-button{background:none;border:0;color:#7b856e;font-size:10px;padding:4px}#message{font-size:11px;line-height:1.5;padding:12px;background:#fff1df;color:#8a633a;border-radius:5px;margin-top:13px}dialog{border:1px solid var(--line);border-radius:14px;max-width:470px;padding:30px;color:#45503c}dialog::backdrop{background:#20302066;backdrop-filter:blur(3px)}dialog h2{font-family:Georgia,serif;font-size:26px;font-weight:400}dialog p{font-size:12px;color:#8a927f}.dialog-actions{display:flex;justify-content:flex-end;gap:10px}.dialog-actions button{border:1px solid var(--line);padding:10px 15px;border-radius:5px;background:white;color:#677459}.dialog-actions .primary{background:var(--green);color:white}#keyError{color:#ab593d}.spinner{width:35px;height:35px;border:2px solid #dbe2cf;border-top-color:#697d51;border-radius:50%;animation:spin 1s linear infinite;margin:auto}#loading h2{font-family:Georgia,serif;font-weight:400;font-size:24px}#loading p{font-size:12px;color:#8b977e}@keyframes spin{to{transform:rotate(360deg)}}#galleryGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;min-height:400px}.gallery-item{padding:10px;background:white;border:1px solid var(--line);border-radius:10px;align-self:start}.gallery-item img{width:100%;height:260px;object-fit:contain;background:#f1f3eb;border-radius:6px}.gallery-item a{display:block;margin-top:8px}.gallery-empty{color:#88927d;font-size:14px;grid-column:1/-1}[hidden]{display:none!important}@media(min-width:1550px){main{max-width:1530px}.canvas{min-height:630px}}@media(max-width:1100px){aside{width:180px;padding:30px 12px}.brand span{font-size:19px}main{margin-left:180px;padding:0 24px}.powered{display:none}h1{font-size:27px}.studio-grid{grid-template-columns:minmax(300px,1fr) minmax(280px,1fr)}.controls{padding:18px}.canvas{min-height:540px}}@media(max-width:850px){aside{position:static;width:auto;flex-direction:row;align-items:center;padding:17px 20px;border-right:0;border-bottom:1px solid var(--line);gap:10px}.workspace,.side-bottom{display:none}.brand{margin-right:auto}.nav{width:auto;margin:0;padding:10px}.nav b{display:none}main{margin:0;padding:0 20px}header{height:60px}.intro{margin:28px 0}.studio-grid{grid-template-columns:1fr 1fr;gap:15px}.canvas{min-height:510px}.preview-head>span{display:none}}@media(max-width:650px){.brand{padding:0;font-size:28px}.brand span{font-size:18px}.brand small{font-size:7px}.nav span{font-size:10px}h1{font-size:26px}.intro p{font-size:11px}.eyebrow{font-size:8px}.studio-grid{grid-template-columns:1fr}.canvas{min-height:430px}.controls{padding:22px}#galleryGrid{grid-template-columns:1fr 1fr}footer span{display:none}}

#profileForm input{display:block;width:100%;border:1px solid #e2e6da;border-radius:6px;padding:11px;margin:8px 0 17px;color:#52594b;background:white} .profile-avatar{width:56px;height:56px;display:grid;place-items:center;background:#edf1e7;color:#344b36;border-radius:50%;font-size:25px} #profileForm .dialog-actions{margin-top:24px}

.angle-previews{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:10px}.angle-card{position:relative;border:1px solid #e2e6da;border-radius:7px;overflow:hidden;background:#fafbf7}.angle-card img{width:100%;height:95px;object-fit:contain;display:block}.angle-card span{display:block;font-size:9px;padding:7px;color:#667659}.angle-card button{position:absolute;right:4px;top:4px;border:1px solid #ddd;background:white;border-radius:50%;width:24px;height:24px;color:#5a6651}

.account-actions{display:flex;gap:8px}.workflow{display:flex;gap:20px;justify-content:space-between;margin:0 0 24px;padding:16px;background:#edf1e7;border-radius:8px;color:#647454;font-size:11px}.workflow b{display:inline-grid;place-items:center;background:white;border-radius:50%;width:22px;height:22px;margin-right:7px}#authForm input{display:block;width:100%;border:1px solid #dbe2d2;border-radius:6px;padding:11px;margin:7px 0 15px}#authDialog{width:440px}#authMessage,#paymentMessage{color:#8a633a}.auth-tabs{display:flex;gap:10px;margin-bottom:22px}.auth-tabs button{background:#f0f4eb;color:#4d6442;border:0;padding:10px;border-radius:5px;font-size:11px}#plansDialog{max-width:760px;width:90vw}.plan-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:25px 0}.plan-card{padding:20px;border:1px solid #dbe2d2;border-radius:8px}.plan-card h3{font-size:15px}.plan-card strong{font-size:28px}.plan-card button{padding:10px;background:#344b36;color:white;border:0;border-radius:5px;width:100%}.plan-card p{font-size:12px}@media(max-width:650px){.workflow{flex-direction:column;gap:10px}.plan-cards{grid-template-columns:1fr}.account-actions{gap:4px}}

.payment-qr{display:block;width:240px;max-width:100%;margin:12px auto}#manualDialog{max-width:460px}#manualForm input:not([type=checkbox]){width:100%;padding:11px;border:1px solid #dbe2d2;border-radius:5px;margin:8px 0 16px}.request-history-row{border-top:1px solid #e2e6da;padding:12px 0;font-size:12px}.admin-main{margin:0 auto;max-width:1150px;padding:0 28px}.admin-back{text-decoration:none;color:#344b36;font-size:18px;font-weight:600}.admin-counts{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:24px 0}.admin-counts .card{padding:24px}.admin-counts span{display:block;font-size:12px;color:#7b896f}.admin-counts strong{font-size:32px;display:block;margin-top:12px}.admin-toolbar{display:flex;align-items:center;justify-content:space-between;margin:22px 0}.admin-toolbar small{font-size:10px;color:#7b896f}.request-card{padding:22px;margin-bottom:14px}.request-card h3{font-size:16px;margin:0}.request-card p{font-size:12px;color:#65735b}.request-card small{display:block;margin-top:6px;color:#8b9580;font-size:10px}.request-top{display:flex;justify-content:space-between;gap:12px}.request-status{border-radius:20px;padding:5px 10px;font-size:10px;background:#fff0d8;color:#876624}.request-status.approved{background:#edf4e4;color:#527439}.request-status.rejected{background:#fcebe5;color:#a6563e}.confirm-payment{display:flex;gap:10px;align-items:start;margin:20px 0;font-size:12px}#adminGate{padding:28px}#adminMessage,#reviewError,#manualMessage{color:#936139}.nav[href]{text-decoration:none}.admin-body .intro{gap:16px}@media(max-width:600px){.admin-counts{gap:8px}.admin-counts .card{padding:13px}.admin-toolbar{display:block}.admin-toolbar small{display:block;margin-top:10px}}
