:root{--primary: #1d2b24;--secondary: #7d8d82;--accent: #b79a6a;--page-background: #ece6dc;color:#182118;background:var(--page-background);font-family:"Suisse Int'l",Avenir Next,Neue Haas Grotesk Text,Helvetica Neue,sans-serif}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:var(--page-background)}a{color:inherit}button,input,textarea{font:inherit}.app-loading,.legal-page{min-height:100vh;display:grid;place-items:center;padding:2rem}.dashboard-layout{--primary: #1d2b24;--secondary: #7d8d82;--accent: #b79a6a;--surface: #ffffff;--line: #ddd4c7;--soft: #f8f4ee;--text: #182118;--muted: #6a726a;display:grid;grid-template-columns:300px 1fr;min-height:100vh;background:var(--page-background)}.sidebar{padding:2rem 1.5rem;background:linear-gradient(180deg,#1d2b24,#24362d);color:#f8f4ee;display:flex;flex-direction:column;gap:1.5rem;border-right:1px solid rgba(255,255,255,.06)}.sidebar-brand h1,.workspace-header h2{font-family:"Suisse Int'l",Avenir Next,Neue Haas Grotesk Display,sans-serif;letter-spacing:-.02em;margin:.15rem 0 0;color:var(--text);font-weight:700}.card-surface h1,.legal-card h1{font-family:"Suisse Int'l",Avenir Next,Neue Haas Grotesk Display,sans-serif;letter-spacing:-.025em;margin:.25rem 0 0;font-weight:700}.sidebar-nav,.sidebar-footer,.status-stack,.mini-actions,.custom-links,.action-grid{display:flex;gap:.75rem;flex-wrap:wrap}.sidebar-nav{flex-direction:column;gap:.5rem}.sidebar-nav button,.ghost,.primary,.danger-lite,.action-grid a,.custom-links a,.mini-actions a{border:0;border-radius:999px;padding:.85rem 1.1rem;text-decoration:none;cursor:pointer}.sidebar-nav button{background:transparent;color:inherit;text-align:left;border-radius:12px;font-weight:600;padding:.95rem 1rem}.sidebar-nav button.active,.primary,.action-grid a,.custom-links a,.mini-actions a{background:#233329;color:#fff}.ghost{background:#fbf8f3;color:var(--primary);border:1px solid #d8cdbd}.danger-lite{background:#fff1ef;color:#7a2218;border:1px solid #f4c7bf}.workspace{padding:2rem 2rem 2.5rem;display:flex;flex-direction:column;gap:1.5rem}.workspace-header{display:flex;justify-content:space-between;gap:1rem;align-items:start}.editor-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:1.5rem}.user-admin-layout{display:grid;gap:1.5rem}.user-list-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.9rem}.user-editor-panel{padding-top:1.6rem}.panel,.card-surface,.legal-card,.login-panel{border-radius:20px;background:var(--surface);box-shadow:0 22px 44px #3d2b1814;border:1px solid rgba(92,73,46,.08)}.panel{padding:1.5rem 1.5rem 1.4rem}.panel-head{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.2rem}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.95rem 1rem}.form-grid-wide{grid-template-columns:repeat(3,minmax(0,1fr))}.form-grid label,.toggle-grid label{display:flex;flex-direction:column;gap:.4rem}.form-grid label span{font-size:.84rem;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.form-grid input,.form-grid textarea{width:100%;border:1px solid var(--line);border-radius:10px;padding:.86rem .95rem;background:#fcfaf7;color:var(--text);transition:border-color .18s ease,box-shadow .18s ease}.form-grid input:focus,.form-grid textarea:focus,.login-form input:focus,.link-row input:focus{outline:0;border-color:var(--primary);box-shadow:0 0 0 3px #12325b1f}.full{grid-column:1 / -1}.toggle-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;margin:1.25rem 0}.toggle-grid-wide{grid-template-columns:repeat(4,minmax(0,1fr))}.toggle-grid label{flex-direction:row;align-items:center;gap:.6rem;min-height:52px;border:1px solid var(--line);border-radius:10px;padding:.8rem .95rem;background:var(--soft)}.link-editor{display:flex;flex-direction:column;gap:.8rem;margin-bottom:1.25rem}.qr-panel{margin-bottom:1.25rem;border-top:1px solid var(--line);padding-top:1.2rem}.qr-layout{display:grid;grid-template-columns:220px 1fr;gap:1.25rem;align-items:center}.qr-box{width:220px;min-height:220px;background:#fff;border:1px solid var(--line);border-radius:14px;display:grid;place-items:center;padding:.75rem}.qr-box svg{width:100%;height:auto;display:block}.qr-copy a{color:var(--primary);font-weight:600;text-decoration:none;word-break:break-all}.link-row,.user-list-item{display:grid;grid-template-columns:1fr 1.4fr .7fr auto;gap:.75rem;align-items:center}.link-row input{border:1px solid var(--line);border-radius:10px;padding:.8rem .9rem;background:#fcfaf7}.user-list-item{grid-template-columns:1fr;text-align:left;border:1px solid var(--line);padding:1rem 1.05rem;border-radius:12px;background:#fcfaf7;cursor:pointer}.user-list-item.active{border-color:var(--primary);box-shadow:0 0 0 3px #12325b14}.preview-surface,.card-surface{color:var(--text);min-height:100%}.preview-surface{border-radius:16px;padding:1.75rem;background:linear-gradient(180deg,#f7f2ea,#fff);border:1px solid var(--line);display:flex;flex-direction:column;gap:1rem}.preview-phone{position:relative;overflow:hidden;padding:0;min-height:568px;border-radius:30px}.preview-phone-media{height:252px;background:linear-gradient(135deg,#d8ddd5,#f4f0ea);background-size:cover;background-position:center;background-repeat:no-repeat}.preview-wave{position:absolute;top:198px;left:0;width:100%;height:110px;color:#fff}.preview-wave svg,.phone-wave svg{width:100%;height:100%;display:block}.preview-phone-content{position:relative;padding:1.65rem 1.45rem 1.55rem}.preview-image,.profile-image{width:104px;height:104px;object-fit:cover;border-radius:50%;border:1px solid var(--line)}.public-layout{min-height:100vh;padding:4rem 1.5rem;background:radial-gradient(circle at top left,color-mix(in srgb,var(--accent) 28%,transparent) 0%,transparent 28%),linear-gradient(180deg,color-mix(in srgb,var(--page-background) 92%,white) 0%,var(--page-background) 100%)}.public-card-wrap{max-width:1180px;margin:0 auto}.card-showcase{min-height:720px;position:relative;display:grid;place-items:center}.phone-card{width:334px;min-height:678px;background:#fffdfa;border-radius:36px;box-shadow:0 30px 54px #4c391f24;border:1px solid rgba(103,79,47,.08);overflow:hidden;position:relative}.phone-card-main{position:relative;z-index:3}.phone-notch{position:absolute;top:12px;left:50%;transform:translate(-50%);width:122px;height:22px;border-radius:0 0 18px 18px;background:#fffdfa;z-index:4;box-shadow:0 2px 10px #00000008}.phone-notch:before,.phone-notch:after{content:"";position:absolute;top:7px;background:#2d2f2d}.phone-notch:before{left:18px;width:40px;height:5px;border-radius:999px}.phone-notch:after{right:18px;width:9px;height:9px;border-radius:50%}.phone-media{height:296px;background:linear-gradient(135deg,#1d2b2424,#b79a6a24);background-size:cover;background-position:center;background-repeat:no-repeat}.phone-media-main{height:318px}.phone-logo{width:72px;height:72px;object-fit:contain;background:#fffffffa;border-radius:50%;padding:10px;box-shadow:0 12px 24px #4c391f1f}.phone-wave{position:absolute;top:214px;left:0;width:100%;height:150px;color:#fffdfa}.phone-wave-main{top:216px;height:146px}.phone-content{position:relative;z-index:2;padding:1.9rem 1.75rem 1.7rem}.phone-content h1,.phone-content h3{margin:.25rem 0}.phone-bio{margin:1rem 0 1.3rem;line-height:1.58;color:var(--muted);font-size:.96rem}.phone-contact-list{display:grid;gap:.95rem}.phone-contact-list a{display:grid;grid-template-columns:38px 1fr;gap:.9rem;align-items:center;text-decoration:none;color:var(--text);font-size:.95rem}.contact-icon{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:color-mix(in srgb,var(--accent) 18%,white);color:var(--primary);box-shadow:inset 0 0 0 1px #1d2b240f}.contact-icon svg{width:18px;height:18px}.phone-links{display:flex;gap:.55rem;flex-wrap:wrap;margin-top:1.35rem}.phone-logo-inline{margin:-3.8rem 0 1rem auto;display:block}.phone-links a{text-decoration:none;padding:.55rem .8rem;border-radius:999px;background:#f5efe5;border:1px solid var(--line);color:var(--primary);font-size:.85rem;font-weight:600}.phone-actions{display:flex;justify-content:space-between;align-items:center;margin-top:1.8rem}.pill-action{text-decoration:none;padding:.7rem 1rem;border-radius:999px;background:var(--primary);color:#fff;font-weight:700}.floating-action{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;text-decoration:none;background:var(--accent);color:#fff;font-size:1.26rem;box-shadow:0 12px 20px #b79a6a59}.floating-download svg{width:22px;height:22px}.mini-kicker{margin:0;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--secondary);font-weight:700}.card-surface-empty{padding:2rem;max-width:680px;margin:0 auto;border-radius:20px;background:#fffdfa}.card-hero,.card-profile{display:block}.card-hero{padding:3rem 2.5rem;background:linear-gradient(180deg,#203028,#1a281f);color:#f6f1ea;min-height:100%;display:flex;flex-direction:column;justify-content:space-between}.brand-logo{width:70px;height:70px;object-fit:contain}.profile-copy p,.muted,.legal-content,.login-brand p{color:var(--muted)}.card-hero .eyebrow,.card-hero .muted,.card-hero h1,.card-hero .headline{color:#f6f1ea}.card-hero .muted{color:#f6f1eab8}.contact-list{margin:1.5rem 0 0}.contact-list div{display:grid;grid-template-columns:100px 1fr;gap:1rem;padding:.8rem 0;border-top:1px solid var(--line)}.public-footer{margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:1rem;align-items:center}.public-footer-standalone{max-width:980px;margin:2rem auto 0;color:var(--muted)}.login-shell{min-height:100vh;display:grid;place-items:center;padding:1.5rem;background:linear-gradient(180deg,#f2ece3,#e6ddd0)}.login-panel{width:min(1040px,100%);display:grid;grid-template-columns:1.2fr .8fr;overflow:hidden}.login-brand{padding:3rem;background:linear-gradient(180deg,#203028,#18241d);color:#f8f2eb;display:flex;flex-direction:column;justify-content:center}.login-form{padding:3rem;display:flex;flex-direction:column;gap:.85rem;background:#fbf8f3}.login-form input{border:1px solid var(--line);border-radius:12px;padding:.9rem 1rem;background:#fffdfa}.login-form button{background:var(--primary);color:#f8f2eb;border:0;border-radius:12px;padding:.95rem 1.2rem;font-weight:700}.legal-preview{display:grid;gap:1.25rem;grid-template-columns:1fr}.form-error,.status.danger{color:#7a2218;background:#fff1ef;border:1px solid #f4c7bf;border-radius:12px;padding:.85rem 1rem}.status.success{color:#1d5a42;background:#ecf9f1;border:1px solid #caecd8;border-radius:12px;padding:.85rem 1rem}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;color:var(--secondary);font-weight:700}.legal-card{max-width:820px;padding:2rem}.legal-back{display:inline-block;margin-bottom:1rem;color:var(--primary)}.sidebar-brand p,.login-help{color:#f4f7fbb8}.sidebar-footer{margin-top:auto;justify-content:space-between;align-items:center}.status-stack{align-items:center}.preview-panel,.user-list-panel{height:fit-content}.panel h3,.login-form h2,.legal-card h1,.card-surface h1{color:var(--text);margin:0}.card-profile{padding:3rem 2.75rem}.headline{font-size:1.02rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.phone-content h1{font-size:2.15rem;line-height:.98;letter-spacing:-.03em;font-weight:700}.phone-content h3{font-size:1.7rem;line-height:1;letter-spacing:-.03em;font-weight:700}.action-grid a,.custom-links a,.mini-actions a,.primary,.danger-lite,.ghost{font-size:.94rem;font-weight:600}.action-grid a,.custom-links a{border-radius:12px}.custom-links{margin-top:.25rem}.custom-links a,.mini-actions a{background:#f6efe4;color:var(--primary);border:1px solid var(--line)}.mini-actions a:last-child,.action-grid a:last-child{background:var(--accent);color:#1f241c;border:1px solid rgba(0,0,0,.04)}.primary{border-radius:12px;padding:.95rem 1.2rem}.login-brand h1,.card-surface h1{font-size:clamp(2.3rem,4vw,4rem);line-height:.98}.workspace-header p,.panel-head p,.login-help,.muted{margin:0}.legal-content{line-height:1.7}.panel textarea{resize:vertical}@media(max-width:900px){.dashboard-layout,.login-panel,.editor-grid,.card-surface{grid-template-columns:1fr}.sidebar{padding-bottom:1rem}.workspace,.sidebar,.login-brand,.login-form,.card-surface{padding:1.25rem}.form-grid,.toggle-grid,.link-row,.form-grid-wide,.toggle-grid-wide,.user-list-grid,.qr-layout{grid-template-columns:1fr}.workspace-header{flex-direction:column}.public-layout{padding:1rem}.public-footer,.sidebar-footer{flex-direction:column;align-items:flex-start}.card-showcase{min-height:auto;gap:0}.phone-card-main,.phone-card{width:min(100%,360px);min-height:620px}}
