:root{--q3-purple:#6036c9;--q3-ink:#282234;--q3-soft:#f5f2fb;--q3-line:#e6e0ef}
body.q3-portal{margin:0;background:#f6f5f8;color:var(--q3-ink);font:16px/1.55 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
body.q3-portal *{box-sizing:border-box}
.q3-portal-top{height:70px;padding:0 max(22px,calc((100% - 1120px)/2));display:flex;align-items:center;justify-content:space-between;background:#fff;border-bottom:1px solid var(--q3-line)}
.q3-portal-top a{color:var(--q3-ink);text-decoration:none}
.q3-brand{font-size:20px;letter-spacing:.5px}
.q3-brand strong{color:var(--q3-purple)}
.q3-portal-shell{width:min(1120px,calc(100% - 32px));margin:42px auto 70px}
.q3-auth-card{width:min(480px,100%);margin:70px auto;background:#fff;padding:36px;border:1px solid var(--q3-line);border-radius:24px;box-shadow:0 22px 60px rgba(36,25,63,.07)}
.q3-auth-card h1,.q3-dashboard-head h1{margin:4px 0 10px;line-height:1.15}
.q3-eyebrow{margin:0;color:var(--q3-purple);font-weight:750;font-size:13px;letter-spacing:.08em;text-transform:uppercase}
.q3-form,.q3-profile-form{display:grid;gap:18px}
.q3-form label,.q3-grid label,.q3-upload>label{display:grid;gap:7px;font-weight:650}
.q3-form input,.q3-grid input:not([type=color]),.q3-grid textarea,.q3-link-row input{width:100%;border:1px solid #cfc6dc;border-radius:11px;padding:12px 13px;background:#fff;color:var(--q3-ink);font:inherit}
.q3-form input:focus,.q3-grid input:focus,.q3-grid textarea:focus,.q3-link-row input:focus{outline:3px solid rgba(96,54,201,.16);border-color:var(--q3-purple)}
.q3-form small,.q3-help,.q3-upload small{color:#716a7d;font-weight:400}
.q3-primary,.q3-secondary,.q3-small{border:0;border-radius:11px;padding:12px 17px;font:inherit;font-weight:700;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}
.q3-primary{background:var(--q3-purple);color:#fff}
.q3-secondary{background:var(--q3-soft);color:#493281;border:1px solid #d8cdef}
.q3-small{padding:8px 11px;background:#fff;color:#493281;border:1px solid #d8cdef;font-size:13px}
.q3-auth-switch{text-align:center;margin:24px 0 0}
.q3-auth-links{display:flex;justify-content:space-between;margin-top:20px}
.q3-auth-card a,.q3-portal-footer a{color:#5030a2}
.q3-check{display:flex!important;grid-template-columns:auto 1fr;align-items:center;justify-content:start;gap:8px!important;font-weight:500!important}
.q3-check input{width:auto!important}
.q3-trap{position:absolute;left:-9999px}
.q3-message{padding:14px 16px;border-radius:12px;margin:18px 0}
.q3-error{background:#fff0f0;color:#7d2323;border:1px solid #f0c4c4}
.q3-success{background:#edf9f1;color:#1f6036;border:1px solid #bee2c8}
.q3-dashboard-head{display:flex;align-items:flex-start;justify-content:space-between;gap:28px;margin-bottom:24px}
.q3-status-card{min-width:230px;background:#fff;border:1px solid var(--q3-line);border-radius:18px;padding:18px;display:grid;gap:3px}
.q3-status-card span,.q3-status-card small{color:#756e7f}
.q3-status-card strong{font-size:20px}
.q3-premium-badge{display:inline-flex;align-items:center;margin-top:8px;padding:6px 11px;border-radius:999px;background:#ede6ff;color:#6036c9;font-size:13px;font-weight:800;letter-spacing:.02em}
.q3-status-active{color:#18763b}
.q3-status-pending{color:#8a6413}
.q3-status-suspended,.q3-status-expired,.q3-status-canceled{color:#9b2929}
.q3-dashboard-actions{display:flex;justify-content:flex-end;margin:0 0 18px}
.q3-public-link{margin:0 0 22px;padding:20px;background:#fff;border:1px solid var(--q3-line);border-radius:18px;display:grid;gap:12px}
.q3-public-link>div:first-child{display:flex;justify-content:space-between;gap:18px;align-items:center}
.q3-public-link span{color:#756e7f}
.q3-public-link strong{color:var(--q3-purple)}
.q3-public-url{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px}
.q3-public-url input{width:100%;min-width:0;border:1px solid #cfc6dc;border-radius:11px;padding:12px 13px;background:#faf9fc;color:var(--q3-ink);font:inherit}
.q3-copy-feedback{color:#716a7d}
.q3-panel{background:#fff;border:1px solid var(--q3-line);border-radius:20px;padding:26px}
.q3-panel h2{margin:0 0 18px;font-size:20px}
.q3-panel>.q3-help{margin-top:-10px}
.q3-upgrade-box{margin-top:22px;padding:20px;border:1px solid #d8cdef;border-radius:16px;background:linear-gradient(135deg,#f8f5ff,#eee7ff)}
.q3-upgrade-box h3{margin:0 0 8px;font-size:19px}
.q3-upgrade-box p{margin:0 0 16px;color:#5f576b}
.q3-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.q3-wide{grid-column:1/-1}
.q3-images{grid-template-columns:repeat(3,minmax(0,1fr))}
.q3-upload{display:grid;align-content:start;gap:10px;padding:16px;border:1px dashed #cfc6dc;border-radius:14px}
.q3-upload-preview{width:90px;height:90px;object-fit:cover;border-radius:12px}
.q3-link-rows,.q3-order-list{display:grid;gap:10px;margin:16px 0}
.q3-link-row{display:grid;grid-template-columns:1fr 1.4fr auto;gap:10px;align-items:center}
.q3-order-item{display:flex;align-items:center;justify-content:space-between;gap:16px;background:var(--q3-soft);border:1px solid var(--q3-line);border-radius:12px;padding:11px 13px}
.q3-order-item>span{font-weight:700}
.q3-order-item>div{display:flex;gap:7px}
.q3-savebar{position:sticky;bottom:16px;display:flex;justify-content:flex-end;padding:14px;background:rgba(255,255,255,.93);border:1px solid var(--q3-line);border-radius:16px;box-shadow:0 12px 34px rgba(36,25,63,.1)}
.q3-portal-footer{text-align:center;color:#746d7d;padding:0 20px 30px;font-size:13px}
@media(max-width:760px){.q3-portal-shell{margin-top:26px}
.q3-dashboard-head{display:grid}
.q3-status-card{min-width:0}
.q3-grid,.q3-images{grid-template-columns:1fr}
.q3-wide{grid-column:auto}
.q3-link-row{grid-template-columns:1fr}
.q3-link-row .q3-small{justify-self:start}
.q3-order-item{align-items:flex-start;flex-direction:column}
.q3-public-link>div:first-child{align-items:flex-start;flex-direction:column;gap:3px}
.q3-public-url{grid-template-columns:1fr}
.q3-public-url .q3-small,.q3-public-url .q3-secondary{width:100%}
.q3-auth-card{margin-top:25px;padding:25px}
.q3-savebar{bottom:8px}
.q3-primary{width:100%}
}
.q3-full-button{width:100%;margin-top:20px}
