:root{--ink:#243f37;--green:#214b41;--green-hover:#153b32;--muted:#758078;--paper:#faf8f2;--line:#e4e6dc;--orange:#b76a42;--sans:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.5}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #d48e56;outline-offset:4px}svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}h1,h2,h3,p{margin:0}h1,h2{letter-spacing:-.05em}h3{font-size:16px;letter-spacing:-.02em}.topbar{max-width:1190px;margin:auto;height:100px;display:flex;justify-content:space-between;align-items:center;padding:0 40px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-size:27px;font-weight:750;letter-spacing:-1.3px}.brand-dot,h1>span{color:var(--orange)}.top-actions{display:flex;align-items:center;gap:25px}.private-label{display:flex;align-items:center;gap:7px;color:#788277;font-size:12px}.private-label svg{width:14px;height:14px}.button{border:1px solid transparent;border-radius:11px;display:inline-flex;align-items:center;justify-content:center;gap:10px;text-decoration:none;padding:13px 21px;font-weight:650;font-size:14px;transition:background .15s,transform .15s}.button:active{transform:translateY(1px)}.button.small{padding:9px 14px;font-size:12px}.button.primary{background:var(--green);color:#fff}.button.primary:hover{background:var(--green-hover)}.button.outline{background:transparent;border-color:#cdd3c7;color:var(--green)}.button.outline:hover{background:#edf0e7}.full{width:100%}main{max-width:1040px;margin:0 auto;padding:50px 30px 60px}.intro{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:35px}.eyebrow{font-size:10px;font-weight:750;letter-spacing:2px;color:#7d887e}.intro h1{font-size:42px;line-height:1.15;margin:10px 0}.intro>div>p:last-child{color:var(--muted);font-size:14px}.layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(290px,1fr);gap:32px;align-items:start}.profile-card{background:white;border:1px solid #e2e6dc;border-radius:24px;overflow:hidden;box-shadow:0 10px 35px #263e3210}.photo-area{height:280px;position:relative;background:#e7ecdf;overflow:hidden}.photo-area:before,.photo-area:after{content:"";position:absolute;border:1px solid #d7dfce;border-radius:50%;width:310px;height:310px;left:-90px;top:-175px;pointer-events:none}.photo-area:after{width:400px;height:400px;left:auto;right:-170px;top:160px}#dog-photo{width:100%;height:100%;object-fit:cover;position:relative;z-index:1}#photo-placeholder{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;padding-bottom:14px;position:relative;z-index:1;color:#59715e}.photo-paw{transform:rotate(-10deg);margin-bottom:13px}.photo-paw img{opacity:.82;border-radius:25px}#photo-placeholder>span{font-weight:650;font-size:14px}#photo-placeholder small{font-size:12px;margin-top:3px;opacity:.7}.photo-tag{position:absolute;z-index:2;left:24px;bottom:18px;display:flex;align-items:center;gap:6px;background:#fffef1ed;border:1px solid #fff9;border-radius:20px;padding:5px 11px;font-size:10px;font-weight:650;letter-spacing:.2px}.photo-tag>span{width:6px;height:6px;background:#78946c;border-radius:50%}.profile-body{padding:30px}.hello-line{display:flex;justify-content:space-between;align-items:center}.heart{color:#b68869;width:25px;height:25px;stroke-width:1.3}.profile-body h2{font-size:56px;line-height:1.1;margin:0 0 7px;overflow-wrap:anywhere}.subtitle{color:var(--muted);font-size:13px}.contact-box{margin:25px 0 28px;padding:20px;background:#f4f6ef;border-radius:15px}.contact-box h3{font-size:17px}.contact-box>p{font-size:12px;color:#718072;margin-top:5px;line-height:1.6}.call-button{width:100%;margin-top:16px}.call-button.disabled{opacity:.55;cursor:not-allowed}.contact-box .contact-hint{font-size:10px;margin-top:9px;text-align:center}.facts{display:grid;grid-template-columns:1fr 1fr;column-gap:24px;row-gap:17px;margin:18px 0 25px}.facts>div{min-width:0}.facts dt{font-size:10px;color:#8a9187;margin-bottom:3px}.facts dd{margin:0;font-size:13px;font-weight:550;overflow-wrap:anywhere}.empty{color:#8c9389!important;font-weight:400!important}.notes-section{display:flex;gap:12px;border-top:1px solid var(--line);padding:23px 0 0}.note-icon{width:34px;height:34px;flex-shrink:0;border-radius:10px;background:#faf0e7;display:flex;align-items:center;justify-content:center;color:#b87e55}.note-icon svg{width:17px;height:17px}.notes-section h3{font-size:13px}.notes-section p{font-size:12px;line-height:1.7;margin-top:6px;white-space:pre-wrap;overflow-wrap:anywhere}.kind-note{text-align:center;color:#9a9f94;font-size:10px;margin-top:30px}.kind-note span{color:#bd9c7a;font-size:15px;margin-left:5px}.owner-panel{display:flex;flex-direction:column;gap:20px}.setup-card,.qr-card{padding:26px;border:1px solid #e3e6db;border-radius:19px;background:#fffef9}.section-title{display:flex;justify-content:space-between;align-items:center;gap:12px}.section-title h2{font-size:21px;font-weight:650;letter-spacing:-.7px}.setup-card .section-title{margin:7px 0}.progress-count{font-size:11px;color:#78916e;background:#edf2e5;padding:4px 8px;border-radius:6px;white-space:nowrap}.muted{font-size:12px;color:var(--muted);line-height:1.7;margin-top:5px}.checklist{list-style:none;padding:0;margin:22px 0}.checklist li{display:flex;align-items:center;gap:10px;font-size:12px;color:#879080;margin:13px 0}.check{width:17px;height:17px;border:1px solid #d5dbcd;border-radius:50%;display:flex;align-items:center;justify-content:center}.done{color:#536e4f!important}.done .check{background:#dce9d2;border:0}.done .check:before{content:"✓";font-size:11px;color:#5d7c50;font-weight:700}.qr-card{background:#f0f2e9}.small-icon{color:#9ba68f}.qr-wrap{width:198px;background:white;padding:11px;margin:22px auto 12px;border-radius:12px;border:1px solid #e2e8d8}.qr-wrap img{display:block;width:100%;height:auto}.qr-actions{display:flex;justify-content:center;align-items:center;gap:14px;font-size:12px;color:#9aa28d}.text-button{border:0;background:none;color:#3f6250;font-size:11px;font-weight:650;padding:4px 0;text-decoration:none;cursor:pointer}.text-button:hover{text-decoration:underline}.warning{margin-top:20px;border-top:1px solid #dce2d1;padding-top:14px;font-size:10px;color:#899075}.warning strong{font-weight:650;color:#827344}.warning p{margin-top:4px;line-height:1.7}.local-note{display:flex;gap:12px;padding:3px 8px}.local-note>svg{width:17px;flex-shrink:0;margin-top:2px;color:#96a08d}.local-note h3{font-size:12px;font-weight:550;color:#73816b}.local-note p{font-size:10px;color:#929a8a;line-height:1.8;margin:5px 0}.local-note .text-button{font-size:10px}footer{max-width:1110px;margin:0 auto;padding:22px 0 35px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;font-size:10px;color:#9b9f91}footer>span:first-child{font-weight:650;color:#6e7c66}.svg-defs{display:none}[hidden]{display:none!important}dialog{border:1px solid #dfe4d6;border-radius:22px;padding:0;width:min(600px,calc(100% - 28px));max-height:90dvh;color:var(--ink);background:var(--paper);box-shadow:0 20px 100px #143c3040}dialog::backdrop{background:#18392ec0;backdrop-filter:blur(4px)}.dialog-header{padding:26px 28px 0;display:flex;align-items:center;justify-content:space-between}.dialog-header h2{font-size:28px;margin-top:5px}.icon-button{border:0;background:#e9ede1;border-radius:50%;font-size:25px;line-height:1;width:33px;height:33px;color:#4f6757}.dialog-note{font-size:11px;color:#7c8874;line-height:1.6;margin:15px 28px 5px;padding:11px 13px;border-radius:8px;background:#edf0e6}.form-fields{padding:15px 28px 24px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.form-grid label,.photo-input{font-size:12px;font-weight:600;display:flex;flex-direction:column;gap:6px}.form-grid .wide{grid-column:1 / -1}input,textarea{width:100%;border:1px solid #d8dfd0;border-radius:8px;padding:10px 11px;background:#fffefa;color:var(--ink);font-size:13px}input::placeholder,textarea::placeholder{color:#a1a799;font-size:12px}input[type=file]{font-size:11px;background:#f1f4e9}.form-fields label>span{font-size:10px;font-weight:400;color:#8c9683}.photo-input{margin-bottom:4px}.remove-photo{margin-bottom:16px;font-weight:400;font-size:10px}.dialog-footer{border-top:1px solid var(--line);padding:18px 28px;display:flex;justify-content:flex-end;gap:10px;position:sticky;bottom:0;background:var(--paper)}#form-error{color:#ad422f;font-size:12px;margin:15px 0 0}.toast{position:fixed;z-index:10;bottom:24px;left:50%;transform:translateX(-50%);max-width:calc(100% - 32px);background:#214b41;color:white;border-radius:10px;padding:13px 20px;font-size:13px;box-shadow:0 5px 30px #0002}.finder-mode .owner-only{display:none}.finder-mode main{max-width:600px;padding-top:32px}.finder-mode .layout{display:block}.finder-notice{text-align:center;margin-top:20px;color:#8c9683;font-size:11px}.finder-mode .private-label{display:none}body:has(dialog[open]){overflow:hidden}
@media(max-width:760px){.topbar{height:77px;padding:0 22px}.brand{font-size:25px}.brand img{width:31px;height:31px}.top-actions{gap:10px}.private-label{font-size:10px}.private-label svg{display:none}main{padding:30px 20px 40px}.intro{align-items:flex-start;margin-bottom:25px}.intro h1{font-size:31px}.intro>div>p:last-child{font-size:12px;max-width:230px}.intro>.button{font-size:0;padding:11px;margin-top:20px;gap:0}.intro>.button svg{width:18px;height:18px}.eyebrow{font-size:8px;letter-spacing:1.5px}.layout{grid-template-columns:1fr;gap:24px;max-width:510px;margin:auto}.photo-area{height:260px}.profile-body{padding:25px}.profile-body h2{font-size:50px}.owner-panel{gap:18px}.setup-card,.qr-card{padding:23px}.checklist{display:grid;grid-template-columns:1fr 1fr;column-gap:10px}.checklist li{font-size:11px;margin:8px 0}.owner-panel .qr-card .muted{max-width:270px}footer{margin:0 22px;font-size:9px;padding-bottom:25px}.dialog-header{padding:23px 20px 0}.dialog-header h2{font-size:25px}.dialog-note{margin:13px 20px 4px}.form-fields{padding:14px 20px 20px}.dialog-footer{padding:16px 20px}.dialog-footer .button{font-size:12px;padding:11px 15px}.form-grid{gap:13px 11px}.form-grid label{font-size:11px}}@media(max-width:390px){.private-label{display:none}.intro h1{font-size:29px}.facts{gap:16px}.form-grid{grid-template-columns:1fr}.checklist{display:block}.photo-area{height:230px}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

.visibility{border:1px solid #dce2d2;border-radius:12px;padding:16px;margin:22px 0 0}.visibility legend{font-size:12px;font-weight:650;padding:0 5px}.visibility>p{font-size:10px;color:#8c9683;margin:0 0 13px}.visibility-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.visibility-grid label{display:flex;align-items:center;gap:7px;font-size:11px;color:#69795f}.visibility-grid input{width:15px;height:15px;accent-color:var(--green);padding:0}
.publish-card{padding:26px;border:1px solid #d9e1d0;border-radius:19px;background:#e9efdf}.publish-card h2{font-size:21px;line-height:1.2;margin-top:9px}.publish-card .button{margin-top:15px}.publish-card .button+.button{margin-top:9px}.publish-card>.text-button{margin-top:15px;color:#9d6349}.button:disabled{opacity:.5;cursor:not-allowed}.publish-review{padding:22px 28px;font-size:13px;color:#6b7c62}.publish-review ul{padding-left:19px;line-height:1.8;overflow-wrap:anywhere;white-space:pre-wrap}.publish-safety{font-size:11px;margin-top:15px}.load-error{position:fixed;bottom:15px;left:15px;right:15px;background:#fff2ea;color:#944e38;border:1px solid #d6aa8b;padding:14px;border-radius:10px;font-size:13px;z-index:8}.private-banner{background:#edf0df;color:#74805f;font-size:11px;padding:11px 16px;border-radius:9px;margin-bottom:18px;text-align:center}.empty-state{padding:60px 28px;text-align:center;border:1px solid var(--line);border-radius:22px;background:#fffefa}.empty-state>img{margin-bottom:20px}.empty-state h1{font-size:30px;line-height:1.2}.empty-state p{color:#829076;font-size:13px;margin:18px auto;max-width:310px}.empty-state .button{margin-top:10px}

.profile-body .hello-line{align-items:flex-start;gap:14px}.profile-body .hello-line h2{font-size:clamp(32px,6vw,44px);line-height:1.15;margin:0 0 9px}.profile-body .hello-line .heart{flex-shrink:0;margin-top:8px}.profile-body .subtitle{font-size:15px;line-height:1.65;color:#6d7e6e}
