:root{color-scheme:light;--background:#f5f5f7;--text:#1d1d1f;--muted:#86868b;--blue:#0071e3;--line:#e9e9ed}*{box-sizing:border-box}body{margin:0;background:var(--background);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;-webkit-font-smoothing:antialiased}a,button,input{-webkit-tap-highlight-color:transparent}button,input{font:inherit}a,button{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-decoration:none}button:disabled{cursor:not-allowed}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #0071e3;outline-offset:4px}button{border:0}svg{flex-shrink:0}.topbar{height:74px;max-width:1100px;padding:0 36px;margin:0 auto;display:flex;align-items:center;justify-content:space-between}.wordmark{font-size:15px;font-weight:750;letter-spacing:2px}.wordmark span{margin-left:7px;font-weight:400}.topbar-caption{font-size:12px;color:var(--muted)}.card-shell{width:min(100% - 40px,440px);margin:20px auto 0}.profile{text-align:center;padding:20px 0 30px}.avatar{width:112px;height:112px;margin:0 auto 27px;border-radius:32px;background:linear-gradient(145deg,#e9ecf1,#dfe3e9);display:grid;place-items:center;box-shadow:0 8px 24px #1d1d1f05}.avatar svg{width:60px;height:60px;color:#a2a8b3}.avatar img{width:100%;height:100%;object-fit:cover;border-radius:inherit}.eyebrow{font-size:10px;font-weight:650;letter-spacing:2px;color:var(--muted);margin:0 0 10px}.profile h1{font-size:44px;letter-spacing:-1.7px;line-height:1.08;font-weight:650;margin:0 0 12px}.role{font-size:17px;color:#6e6e73;margin:0}.profile-note{display:inline-flex;align-items:center;gap:6px;margin-top:17px;color:#86868b;font-size:11px}.profile-note>span{width:5px;height:5px;border-radius:50%;background:#9da3ac}.actions{display:grid;gap:10px}.button{position:relative;display:flex;justify-content:center;align-items:center;gap:10px;height:56px;border-radius:16px;font-size:15px;font-weight:550;transition:background .18s,transform .18s;background:white;color:var(--text);width:100%}.button:active:not(:disabled){transform:scale(.985)}.button.primary{background:var(--blue);color:white}.button.primary:hover:not(:disabled){background:#0077ed}.primary:disabled{opacity:.55}.button .trailing{position:absolute;right:19px;opacity:.7}.two-columns{display:grid;grid-template-columns:1fr 1fr;gap:10px}.messenger{background:#eaeaf0}.messenger:disabled{color:#86868b}.messenger:hover:not(:disabled){background:#e1e1e7}.save-contact{border:1px solid #e2e2e7}.save-contact:hover{background:#fafafa}.draft-note{font-size:10px;color:#96969d;text-align:center;margin:2px 0 12px}.panel{background:#fff;border:1px solid #eaeaf0;border-radius:24px;padding:24px;margin-top:16px}.address-panel{display:grid;grid-template-columns:38px 1fr;column-gap:10px}.section-icon{width:36px;height:36px;border-radius:12px;background:#f5f5f7;display:grid;place-items:center;color:#6e6e73;margin-top:3px}.section-heading h2{font-size:20px;line-height:1.25;letter-spacing:-.55px;font-weight:600;margin:0}.section-heading .eyebrow{font-size:9px;letter-spacing:1.5px;margin-bottom:6px}.address{grid-column:2;font-size:13px;line-height:1.6;color:#86868b;margin:12px 0 20px}.map-links{grid-column:1/-1}.map-link{display:flex;align-items:center;justify-content:space-between;padding:13px 12px;border-radius:11px;background:#f5f5f7;font-size:12px;font-weight:500}.map-link:disabled{color:#96969d}.services-panel{padding-bottom:17px}.section-description{font-size:13px;color:#86868b;margin:9px 0 0}.services{list-style:none;margin:18px 0 0;padding:0}.services li{display:flex;align-items:center;gap:12px;padding:13px 0;font-size:14px}.services li+li{border-top:1px solid #f0f0f3}.service-icon{width:32px;height:32px;display:grid;place-items:center;border-radius:10px;background:#f5f5f7;color:#6e6e73}.services-note{font-size:10px;color:#a1a1a6;margin:10px 0 0}.bottom-actions{margin-top:25px}.bottom-actions,.bottom-actions button{display:flex;align-items:center;justify-content:center}.bottom-actions button{background:transparent;gap:9px;font-size:12px;color:#515154;min-height:44px;flex:1 1}.bottom-actions button:hover{color:var(--blue)}.vertical-divider{height:18px;width:1px;background:#dcdce1}footer{text-align:center;padding:33px 0 35px}.footer-brand{font-size:9px;letter-spacing:2px;font-weight:650;color:#a3a3a9}footer p{font-size:11px;color:#a3a3a9;margin:9px 0 0}.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%,12px);background:#1d1d1f;color:white;border-radius:15px;padding:14px 20px;font-size:13px;line-height:1.5;width:max-content;max-width:calc(100% - 32px);opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;z-index:10;box-shadow:0 5px 30px #0002}.toast.visible{opacity:1;transform:translate(-50%)}.qr-dialog{border:0;border-radius:28px;padding:40px 28px 28px;width:min(380px,calc(100% - 32px));text-align:center;color:var(--text);box-shadow:0 24px 80px #0002}.qr-dialog::backdrop{background:#16161a66;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}.close-dialog{position:absolute;right:14px;top:14px;width:32px;height:32px;border-radius:50%;background:#f5f5f7;display:grid;place-items:center;color:#86868b}.qr-dialog h2{font-size:28px;letter-spacing:-1px;margin:10px 0}.qr-description{font-size:14px;line-height:1.6;color:#86868b}.qr-image{display:block;width:240px;height:240px;max-width:100%;object-fit:contain;margin:18px auto}.qr-url{width:100%;background:#f5f5f7;border:0;border-radius:9px;font-size:11px;color:#6e6e73;text-align:center;padding:12px;margin-bottom:16px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:600px){.topbar{height:64px;padding:0 22px}.topbar-caption{font-size:10px}.wordmark{font-size:12px;letter-spacing:1.7px}.card-shell{margin-top:4px;width:calc(100% - 40px);max-width:440px}.profile{padding-top:18px}.profile h1{font-size:38px}.avatar{width:100px;height:100px;border-radius:29px;margin-bottom:24px}.button{height:54px}.panel{padding:22px}.services-panel{padding-bottom:17px}}@media(prefers-reduced-motion:reduce){*,:after,:before{transition:none!important;scroll-behavior:auto!important}}.public-card{min-height:100vh;background:var(--background)}.extra-links a{display:flex;justify-content:space-between;align-items:center;padding:12px 0;font-size:14px}.extra-links a+a{border-top:1px solid var(--line)}.state-screen{max-width:600px;margin:100px auto;padding:30px;text-align:center}.state-screen h1{font-size:24px;letter-spacing:-.6px}.state-screen a{color:var(--blue)}.admin-app,.login-page{min-height:100vh;background:#f5f5f7}.admin-brand{font-size:16px;letter-spacing:2px;font-weight:450}.admin-brand b{font-weight:750}.admin-header{height:78px;max-width:1240px;margin:auto;padding:0 40px;justify-content:space-between;border-bottom:1px solid #e3e3e8}.admin-header,.admin-user{display:flex;align-items:center}.admin-user{gap:12px;font-size:13px;color:#6e6e73}.admin-user button{display:grid;place-items:center;width:34px;height:34px;background:transparent;border-radius:9px;color:#6e6e73}.admin-user button:hover{background:#e9e9ee}.admin-main{max-width:1240px;margin:0 auto;padding:42px 40px 70px}.admin-title-row{display:flex;justify-content:space-between;align-items:center;margin:14px 0 34px;gap:20px}.admin-title-row h1{font-size:36px;font-weight:650;letter-spacing:-1.2px;margin:0}.admin-title-row p:not(.eyebrow){font-size:14px;color:#86868b;margin:12px 0 0}.admin-primary{height:46px;display:inline-flex;align-items:center;justify-content:center;gap:9px;background:#0071e3;color:white;padding:0 19px;border-radius:13px;font-size:14px;font-weight:550;white-space:nowrap}.admin-primary:hover{background:#0077ed}.admin-primary:disabled{opacity:.6;cursor:wait}.profiles-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.profile-tile{background:white;border:1px solid #e9e9ed;border-radius:23px;padding:24px}.tile-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.tile-photo{width:64px;height:64px;border-radius:19px;background:#f2f3f6;display:grid;place-items:center;color:#a5abb4;overflow:hidden}.tile-photo img{width:100%;height:100%;object-fit:cover}.status-pill{font-size:10px;background:#f1f1f5;color:#86868b;border-radius:20px;padding:6px 9px;white-space:nowrap}.status-pill.published{background:#ecf6ed;color:#348446}.profile-tile h2{font-size:20px;letter-spacing:-.5px;margin:20px 0 8px}.profile-tile p{font-size:13px;color:#86868b;margin:0 0 16px}.tile-slug{font-size:12px;color:#a0a0a6}.tile-actions{display:flex;align-items:center;gap:13px;margin-top:22px;padding-top:18px;border-top:1px solid #ededf1}.tile-actions button{font-size:12px;font-weight:550;background:#f5f5f7;padding:11px 14px;border-radius:10px}.tile-actions a{font-size:12px;color:#0071e3;display:flex;align-items:center;gap:4px}.empty-profiles{padding:80px;text-align:center;color:#86868b}.login-page{display:grid;place-items:center;padding:40px 20px}.login-card{width:100%;max-width:440px;background:white;border:1px solid #e9e9ed;padding:38px;border-radius:28px;text-align:center}.login-icon{width:64px;height:64px;margin:32px auto 22px;display:grid;place-items:center;background:#f1f6ff;color:#0071e3;border-radius:19px}.login-card h1{font-size:28px;line-height:1.2;letter-spacing:-1px;margin:0 0 14px}.login-card>p{font-size:14px;line-height:1.5;color:#86868b}.login-card form{margin-top:28px;text-align:left}.login-back{display:block;margin-top:24px;font-size:12px;color:#86868b}.admin-app label,.login-page label{display:block;font-size:12px;font-weight:550;margin-bottom:17px;color:#6e6e73}.admin-app input:not([type=checkbox]):not([type=file]),.admin-app textarea,.login-page input{display:block;width:100%;border:1px solid #dedee5;border-radius:11px;padding:12px 13px;margin-top:7px;background:#fff;color:#1d1d1f;font:inherit;font-size:14px}.admin-app input[readonly]{background:#f5f5f7!important;color:#86868b!important}.admin-app input[type=color]{height:45px;padding:6px!important;cursor:pointer}.admin-app textarea{resize:vertical;line-height:1.6}.admin-app small{display:block;font-size:11px;font-weight:400;color:#96969d;line-height:1.5;margin-top:7px}.form-error{background:#fff0ef;color:#b6332c;padding:13px 16px;border-radius:12px;font-size:13px;line-height:1.5}.form-success{color:#30703d;background:#edf7ef;font-size:13px;display:flex;align-items:center;gap:8px}.banner{padding:14px 18px;border-radius:12px;margin-bottom:18px}.editor-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;gap:15px}.editor-title>span{font-size:11px;color:#86868b}.back-button{background:transparent;padding:0;display:flex;align-items:center;gap:8px;font-size:13px;color:#515154;min-height:35px}.editor-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:32px;align-items:start}.editor-section,.settings-panel{padding:25px;background:white;border-radius:21px;border:1px solid #e9e9ed;margin-bottom:16px}.editor-section h2,.settings-panel h2{font-size:20px;letter-spacing:-.5px;margin:0 0 20px}.editor-section>p{font-size:13px;color:#86868b;margin:-8px 0 22px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.editor-section>label:last-child{margin-bottom:0}.media-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px}.media-field>span{font-size:12px;color:#6e6e73}.media-preview{width:85px;height:85px;background:#f5f5f7;margin:12px 0;border-radius:16px;display:grid;place-items:center;color:#a0a0a6;overflow:hidden}.media-preview img{width:100%;height:100%;object-fit:contain}.upload-button{display:inline-block!important;background:#f0f5ff;color:#0071e3!important;border-radius:9px;padding:10px 14px;cursor:pointer;margin-bottom:8px!important}.upload-button input{position:absolute;width:1px;height:1px;opacity:0}.remove-image{display:block;background:transparent;font-size:11px;padding:0;color:#86868b}.link-editor{display:grid;grid-template-columns:1fr 1.5fr 26px;gap:8px;margin-bottom:12px;align-items:center}.link-editor input{margin-top:0!important}.link-editor button{background:transparent;color:#86868b}.add-link{display:flex;align-items:center;gap:6px;background:transparent;color:#0071e3;font-size:12px;padding:8px 0}.checkbox-label{display:flex!important;gap:12px;align-items:flex-start;margin:14px 0 0!important;cursor:pointer}.checkbox-label input{width:18px;height:18px;accent-color:#0071e3}.checkbox-label span{font-size:14px;color:#1d1d1f;padding-top:1px}.save-bar{justify-content:space-between;gap:16px;position:sticky;bottom:16px;background:#fff;padding:15px 20px;border:1px solid #e5e5ec;border-radius:16px;box-shadow:0 5px 25px #00000009;z-index:2}.save-bar,.save-bar a{display:flex;align-items:center}.save-bar a{color:#0071e3;font-size:12px;gap:5px}.preview-column{position:sticky;top:24px}.preview-column>.eyebrow{text-align:center;margin:0 0 16px}.editor-preview{border:1px solid #e1e1e7;border-radius:30px;overflow:auto;max-height:800px;box-shadow:0 12px 40px #1d1d1f08}.editor-preview .public-card{min-height:0;padding-top:15px}.editor-preview .topbar{display:none}.editor-preview .card-shell{width:calc(100% - 32px);margin-top:0}.editor-preview .profile h1{font-size:32px}.editor-preview .button{font-size:13px}.editor-preview .button .trailing{display:none}.editor-preview .panel{padding:20px}.settings-panel{max-width:600px}.settings-panel form{display:grid;grid-template-columns:1fr 1fr;gap:12px}.settings-panel .button{grid-column:1/-1}.settings-panel label{margin:0}@media(max-width:1000px){.profiles-grid{grid-template-columns:1fr 1fr}.editor-grid{grid-template-columns:minmax(0,1fr) 310px;gap:20px}.admin-main{padding:30px 25px}.admin-header{padding:0 25px}}@media(max-width:760px){.admin-header{height:66px;padding:0 20px}.admin-main{padding:24px 20px 50px}.admin-title-row{align-items:flex-start;flex-direction:column}.admin-title-row h1{font-size:30px}.editor-grid,.profiles-grid{grid-template-columns:1fr}.preview-column{position:static;max-width:390px;justify-self:center;width:100%;margin-top:20px}.form-grid{grid-template-columns:1fr}.editor-section{padding:20px}.editor-title>span{max-width:145px;text-align:right}.save-bar{bottom:10px;padding:12px}.save-bar a{font-size:11px}.settings-panel form{grid-template-columns:1fr}.login-card{padding:30px 24px}.login-card h1{font-size:26px}.link-editor{grid-template-columns:1fr 26px}.link-editor input:nth-child(2){grid-column:1}.link-editor button{grid-column:2;grid-row:1/3}}