*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Inter,"Segoe UI",Arial,sans-serif;color:#2b2040;background:#f7f4fa}button,input,textarea,select{font:inherit}button{cursor:pointer;border:1px solid #ddd2e8;border-radius:10px;padding:10px 13px;background:white;color:#47355c}button:hover{border-color:#9661bd}button:disabled{opacity:.4;cursor:not-allowed}.primary{background:#713c99;color:#fff;border-color:#713c99;font-weight:650}.primary:hover{background:#5c2c80}.ghost{background:#fff}.danger{background:#fff1f2;color:#a02454}.hidden{display:none!important}.wide{width:100%}h1,h2,h3,h4,p{margin:0}h1{font-size:27px}h2{font-size:19px}h3{font-size:17px}h4{font-size:13px}p{line-height:1.5}.muted,.hint{color:#81758b;font-size:12px}.error{color:#b33447;min-height:16px;font-size:13px}.full-center{min-height:100vh;display:grid;align-content:center;justify-items:center;text-align:center;gap:14px;padding:20px}.spinner{height:32px;width:32px;border:4px solid #e7dbee;border-top-color:#713c99;border-radius:100%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.auth-card{background:white;width:min(400px,95vw);padding:36px;border-radius:22px;box-shadow:0 18px 55px #40245714;display:grid;gap:16px;text-align:left}.auth-card h1,.auth-card h2,.auth-card>p{text-align:center}.auth-card h2{font-size:17px;font-weight:500}.brandmark{text-align:center;font-size:34px}label{display:grid;gap:5px;font-size:12px;font-weight:650;margin-bottom:10px}input:not([type=range]):not([type=color]):not([type=file]),textarea,select{width:100%;border:1px solid #ded5e5;border-radius:9px;padding:10px;background:#fff;color:#342643;font-size:14px}input[type=color]{height:40px;width:100%;border:1px solid #ddd2e8;background:white;border-radius:7px}input[type=range]{width:100%}textarea{resize:vertical}.topbar{height:67px;border-bottom:1px solid #e7ddec;background:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 22px;gap:12px}.top-actions{display:flex;gap:9px;align-items:center}.wordmark{display:flex;align-items:center;gap:7px;font-size:20px;font-weight:800;color:#633282}.wordmark small{font-size:12px;font-weight:500;color:#8d7899;margin-left:8px}.dash-main{max-width:1150px;margin:30px auto;padding:0 20px}.dash-title,.section-title{display:flex;justify-content:space-between;align-items:center;gap:20px}.dash-title p{color:#8c7e97;margin-top:8px}.dash-section{margin-top:32px}.dash-section h2{margin-bottom:14px}.template-row{display:flex;gap:18px;flex-wrap:wrap}.template-card{width:215px;display:grid;gap:8px;text-align:left;padding:11px}.template-card small{font-size:11px;color:#806d91}.template-preview{height:180px;border-radius:9px;background:radial-gradient(circle at 60% 25%,#ecbfff,#63308b 70%,#301143);color:#ffe8ac;display:grid;align-content:center;justify-items:center;text-align:center;font-family:Georgia,serif;font-size:42px;overflow:hidden}.template-preview em{font-size:22px;font-weight:600;font-style:italic;line-height:1.25}.template-preview small{color:#ffe8ca;font-size:10px}.blank-preview{background:#ede8f2;color:#8c65a6;font-size:55px}.project-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(245px,1fr));gap:15px}.project-item{background:white;border:1px solid #e5dcec;border-radius:14px;padding:19px;display:grid;gap:10px;box-shadow:0 6px 20px #27152b08}.project-item .meta{font-size:12px;color:#8c7f96}.project-buttons{display:flex;gap:7px;flex-wrap:wrap}.project-buttons button{font-size:12px;padding:8px}.editor-layout{display:grid;grid-template-columns:260px minmax(320px,1fr) 250px;height:calc(100vh - 67px)}.sidebar{background:#fff;overflow-y:auto;padding:20px;border-right:1px solid #e9e1ef}.rightbar{border-right:0;border-left:1px solid #e9e1ef}.sidebar h3{margin-bottom:20px}.tool-block{padding:0 0 18px;margin-bottom:18px;border-bottom:1px solid #eee7f2}.tool-block h4{margin-bottom:10px;color:#6c4786}.tool-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}.tool-grid button{font-size:12px;padding:10px 5px}.tool-block .hint{margin-top:8px}.upload-btn{padding:12px;border:1px dashed #aa8db9;border-radius:9px;text-align:center;cursor:pointer;color:#704497}.secondary-upload{background:#faf7fd}.background-actions,.inline-actions{display:flex;gap:6px;margin:10px 0}.background-actions button,.inline-actions button{flex:1;font-size:12px;padding:8px 5px}.pages-list{display:grid;gap:7px;margin-bottom:9px}.page-button{text-align:left;font-size:12px}.page-button.active{background:#eee3fa;border-color:#8d57b5;color:#562b75}.work-area{overflow:auto;padding:18px;background:radial-gradient(circle at 50% 0,#f9f3ff,#ece5f3)}.canvas-head{display:flex;justify-content:space-between;gap:8px;align-items:center;font-size:13px;margin:0 auto 14px;max-width:410px}.canvas-head span{font-size:11px;color:#8e7a9d}.canvas-shell{width:100%;display:flex;justify-content:center;padding-bottom:14px}.artboard{width:360px;height:640px;position:relative;flex-shrink:0;overflow:hidden;border-radius:10px;background:radial-gradient(circle at 50% 25%,#d8aefa,#8450b0 60%,#351d5f);box-shadow:0 18px 45px #51316c4a;touch-action:none}.artboard:before{content:"";position:absolute;inset:12px;border:2px solid #eecffc8c;border-radius:7px;pointer-events:none}.art-element{position:absolute;display:flex;justify-content:center;align-items:center;text-align:center;white-space:pre-wrap;overflow:visible;touch-action:none;user-select:none;cursor:move;line-height:1.12;padding:2px;transform-origin:center center}.art-element img{width:100%;height:100%;object-fit:contain;pointer-events:none}.art-element.selected{outline:2px dashed #fff;outline-offset:3px}.resize-handle{position:absolute;right:-9px;bottom:-9px;background:#fff;border:3px solid #874db4;border-radius:50%;width:19px;height:19px;touch-action:none;cursor:nwse-resize;z-index:2}.canvas-actions{display:flex;justify-content:center;gap:8px;align-items:center}.canvas-actions button{font-size:12px}.empty-inspector{font-size:13px;color:#8d8097;line-height:1.6}.modal{position:fixed;inset:0;background:#1b0e2bbb;z-index:100;display:grid;place-items:center;padding:20px}.modal-card{background:#fff;max-width:530px;width:100%;border-radius:17px;padding:26px;position:relative;max-height:90vh;overflow:auto}.modal-card h2{margin-bottom:12px}.modal-close{position:absolute;right:15px;top:15px}.modal-card p{margin-bottom:11px}.modal-card a{word-break:break-all}.guest-view{min-height:100vh;background:radial-gradient(circle,#7352a9,#210e3c);display:grid;place-items:center;padding:24px}.guest-shell{width:min(400px,95vw);min-height:650px;position:relative}.guest-page{width:100%;height:650px;position:relative;overflow:hidden;border:3px solid #dfb4ee;border-radius:18px;box-shadow:0 15px 60px #130623ba;background:radial-gradient(circle at top,#d4a9e9,#643085)}.guest-element{position:absolute;white-space:pre-wrap;text-align:center;display:flex;justify-content:center;align-items:center;transform-origin:center;line-height:1.12}.guest-element img{width:100%;height:100%;object-fit:contain}.guest-controls{display:flex;justify-content:center;align-items:center;gap:12px;margin-top:15px;color:#fff}.guest-controls button{background:#f8ebff}.envelope-screen{width:100%;height:650px;display:grid;place-items:center;background:radial-gradient(circle at 55% 22%,#d5a6f6,#7042a0 65%,#31154d);border-radius:20px;box-shadow:0 15px 55px #1e092d88;text-align:center;color:#fff3d3}.envelope{width:295px;height:200px;background:linear-gradient(145deg,#f5ddfd,#ba85dc);box-shadow:0 12px 25px #29123988;position:relative;border-radius:0 0 13px 13px;border:2px solid #efd9ff;cursor:pointer}.envelope:before{content:"";position:absolute;left:0;right:0;top:-105px;border-left:145px solid transparent;border-right:145px solid transparent;border-bottom:105px solid #e6c3f4;filter:drop-shadow(0 -2px 1px #ab70cf)}.seal{position:absolute;top:55px;left:113px;background:#a06ac6;width:66px;height:66px;border:3px solid #f4cbff;border-radius:50%;display:grid;place-items:center;font-size:38px;z-index:2;box-shadow:0 3px 8px #52216b66}.envelope-copy{position:absolute;top:135px;left:0;right:0;color:#6b398e;font-family:Georgia,serif;font-size:13px}#toast{position:fixed;bottom:18px;left:50%;transform:translateX(-50%);background:#352347;color:white;border-radius:12px;padding:12px 16px;display:none;z-index:300;max-width:90vw;text-align:center}#toast.show{display:block}@media(max-width:1050px){.editor-layout{grid-template-columns:210px minmax(360px,1fr) 210px}.sidebar{padding:12px}.topbar{padding:0 12px}.top-actions{gap:5px}.top-actions button{padding:8px;font-size:12px}}@media(max-width:850px){.editor-layout{height:auto;display:flex;flex-direction:column}.sidebar{overflow:visible}.leftbar{order:1}.work-area{order:0}.rightbar{order:2}.artboard{max-width:100%}.topbar{height:auto;min-height:67px;flex-wrap:wrap;padding:10px}.top-actions{flex-wrap:wrap}.dash-title{align-items:flex-start;flex-direction:column}}