:root{--background:#f4f4f2;--card:#fff;--text:#242424;--muted:#737373;--line:#ddddda;--nabati-red:#df252f;--nabati-red-dark:#bd1822;--soft-red:#fff1f1;--success:#1f7a45}*{box-sizing:border-box}html,body{background:var(--background);min-height:100%;color:var(--text);margin:0;font-family:Arial,Helvetica,sans-serif}body{min-height:100dvh}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}.shell{width:min(100%,760px);min-height:100dvh;padding:max(18px, env(safe-area-inset-top)) 18px max(22px, env(safe-area-inset-bottom));margin:0 auto}.business-card{aspect-ratio:1.586;background:var(--card);border:1px solid #e0e0dc;border-radius:22px;width:100%;position:relative;overflow:hidden;box-shadow:0 18px 50px #22222214}.card-logo{object-fit:contain;width:27%;height:auto;position:absolute;top:9%;left:7%}.card-identity{text-align:right;width:58%;position:absolute;bottom:18%;right:7%}.card-name{letter-spacing:-.03em;margin:0;font-size:clamp(20px,5.5vw,34px);font-weight:700;line-height:1.05}.card-title{margin:8px 0 0;font-size:clamp(12px,3.5vw,20px);font-weight:400;line-height:1.25}.card-url{color:var(--muted);font-size:clamp(10px,2.7vw,14px);position:absolute;bottom:8%;left:7%}.topbar,.nav-hints,.row-between{justify-content:space-between;align-items:center;gap:12px;display:flex}.topbar{margin-bottom:16px}.eyebrow{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:12px}.pill{border:1px solid var(--line);min-height:28px;color:var(--muted);background:#fff;border-radius:999px;align-items:center;gap:6px;padding:5px 10px;font-size:12px;display:inline-flex}.nav-hints{color:var(--muted);margin-top:14px;font-size:13px}.nav-button,.secondary-button,.primary-button,.icon-button{cursor:pointer;border:0}.nav-button{color:var(--muted);background:0 0;padding:8px 0}.primary-button,.secondary-button{border-radius:14px;width:100%;min-height:50px;font-weight:700}.primary-button{background:var(--nabati-red);color:#fff}.primary-button:hover{background:var(--nabati-red-dark)}.secondary-button{border:1px solid var(--line);color:var(--text);background:#fff}.panel{border:1px solid var(--line);background:#fff;border-radius:18px;margin-top:18px;padding:18px}.panel-title{margin:0;font-size:18px}.muted{color:var(--muted)}.small{font-size:13px}.share-stage{text-align:center;place-items:center;min-height:64dvh;display:grid}.qr-box{border:1px solid var(--line);background:#fff;border-radius:24px;width:min(76vw,330px);padding:16px}.qr-box img{border-radius:10px;width:100%;height:auto;display:block}.countdown{font-variant-numeric:tabular-nums;margin-top:14px;font-size:15px}.success-line{color:var(--success);font-weight:700}.connection-list{gap:10px;margin-top:14px;display:grid}.connection-row{border:1px solid var(--line);background:#fff;border-radius:14px;padding:14px}.connection-meta{justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;display:flex}.note-row{grid-template-columns:1fr auto;gap:8px;display:grid}.note-input,.login-input{border:1px solid var(--line);width:100%;min-height:44px;color:var(--text);background:#fff;border-radius:12px;outline:none;padding:10px 12px}.note-input:focus,.login-input:focus{border-color:var(--nabati-red);box-shadow:0 0 0 3px var(--soft-red)}.note-save{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:12px;min-width:68px}.action-grid{grid-template-columns:repeat(3,1fr);gap:10px;margin-top:12px;display:grid}.action-link{border:1px solid var(--line);background:#fff;border-radius:14px;place-items:center;min-height:50px;font-weight:600;display:grid}.public-card-wrap{place-items:center;min-height:calc(100dvh - 40px);display:grid}.public-stack{width:100%}.login-wrap{place-items:center;min-height:calc(100dvh - 40px);display:grid}.login-card{border:1px solid var(--line);background:#fff;border-radius:22px;width:min(100%,420px);padding:24px}.login-logo{width:128px;height:auto;margin-bottom:28px}.login-card h1{margin:0 0 8px;font-size:26px}.login-form{gap:12px;margin-top:22px;display:grid}.error{color:#a5151d;font-size:13px}@media (min-width:700px){.shell{padding-left:28px;padding-right:28px}.card-name{font-size:36px}.card-title{font-size:21px}}
