*{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light only}:root{--bg:#f8f4e6;--text:#1c1b18;--muted:#6f6b60;--line:#e6e1d6;--accent:#5b4b7a;--accent-hover:#78639f;--danger:#b91c1c;--ok:#166534;--soft:#fbf8ee}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--text);margin:0;padding:0;font:16px/1.5 "Source Sans 3",system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif}.wrap{max-width:1140px;margin:0 auto;padding:24px 20px}.auth-center{justify-content:center;align-items:center;min-height:60vh;padding:40px 20px;display:flex}.auth-card{border:1px solid var(--line);background:#fffc;border-radius:16px;width:100%;max-width:480px;padding:28px;box-shadow:0 6px 22px #12121214}.auth-card h1{color:#1e1833;margin:0 0 6px;font-family:Playfair Display,Georgia,serif;font-size:24px;font-weight:700}.auth-card .subtitle{color:var(--muted);margin:0 0 18px;font-size:14px}.auth-tabs{border-bottom:2px solid var(--line);gap:4px;margin-bottom:16px;display:flex}.auth-tabs .tab{cursor:pointer;color:var(--muted);background:0 0;border:none;border-bottom:3px solid #0000;border-radius:0;margin-bottom:-2px;padding:10px 14px;font-family:inherit;font-size:15px;font-weight:700;transition:color .15s,border-color .15s}.auth-tabs .tab:hover{color:var(--accent)}.auth-tabs .tab.active{color:var(--accent);border-bottom-color:var(--accent)}.auth-msg{color:#991b1b;background:#fef2f2;border:1px solid #fecaca;border-radius:12px;margin:10px 0;padding:10px 12px;font-size:14px;display:none}.auth-card label{color:var(--text);margin:10px 0 0;font-size:13px;font-weight:600;display:block}.auth-card input{border:1px solid var(--line);background:var(--soft);width:100%;color:var(--text);border-radius:10px;outline:none;margin-top:3px;padding:10px 12px;font:15px/1.3 "Source Sans 3",sans-serif}.auth-card input:focus{background:#fff;border-color:#5b4b7a8c;box-shadow:0 0 0 4px #5b4b7a24}.auth-actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:16px;display:flex}.help-line{color:var(--muted);margin-top:14px;font-size:12px}.help-line a{color:#3d1f5ef2;border-bottom:1px solid #3d1f5e40;text-decoration:none}.request-access-line{border-top:1px solid var(--line);margin-top:18px;padding-top:16px}.request-access-line p{color:var(--text);margin:0 0 12px;font-size:14px;line-height:1.5}.linkback{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:none;margin-top:14px;padding:0;font-size:13px;display:block}.linkback:hover{color:var(--accent)}.req-err{color:#b91c1c;margin-top:3px;font-size:12.5px;display:none}.req-err.show{display:block}.req-msg{min-height:18px;margin-top:12px;font-size:13.5px;font-weight:650}.req-msg.bad{color:#b91c1c}.btn{cursor:pointer;-webkit-user-select:none;user-select:none;border:1px solid #1212121f;border-radius:999px;justify-content:center;align-items:center;padding:11px 20px;font-family:inherit;font-size:15px;font-weight:700;text-decoration:none;transition:background .15s,border-color .15s;display:inline-flex}.btn:active{transform:translateY(1px)}.btn.primary{background:var(--accent);color:#fff;border-color:#3d1f5e8c}.btn.primary:hover{background:var(--accent-hover)}.btn.primary:disabled{opacity:.6;cursor:not-allowed}.btn.secondary{color:#2b2347;background:#ffffffbf}.btn.secondary:hover{background:#ffffffeb;border-color:#3d1f5e47}.btn.small{padding:7px 14px;font-size:13px}.btn.danger{color:var(--danger);background:#fef2f2;border-color:#fecaca}.portal-header{border:1px solid var(--line);background:#fff;border-radius:14px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;padding:16px 20px;display:flex}.portal-header h1{margin:0;font-size:22px;font-weight:800}.portal-header .subtitle{color:var(--muted);margin:2px 0 0;font-size:13px}.section-card{border:1px solid var(--line);background:#fff;border-radius:14px;margin-bottom:16px;padding:18px 20px}.section-card h2{color:var(--accent);margin:0 0 12px;font-size:17px;font-weight:800}.section-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.section-header h2{margin:0}.info-grid{grid-template-columns:1fr 1fr;gap:8px 16px;display:grid}.info-item{font-size:14px}.info-label{color:var(--muted);text-transform:uppercase;letter-spacing:.03em;font-size:12px;font-weight:600}@media (max-width:500px){.info-grid{grid-template-columns:1fr}}.dog-card{border:1px solid var(--line);background:#fff;border-radius:16px;margin-bottom:20px;overflow:hidden;box-shadow:0 1px 2px #1c1b180d}.dog-card-top{gap:18px;padding:20px;display:flex}.dog-photo-wrap{flex-shrink:0;align-self:flex-start;position:relative}.dog-photo{background:var(--soft);width:132px;height:132px;display:block}.dog-photo-placeholder{background:var(--soft);border:1.5px dashed var(--line);width:132px;height:132px;color:var(--muted);text-align:center;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:3px;padding-bottom:14px;font-size:12px;line-height:1.2;display:flex}.dog-photo-placeholder:before{content:"📷";opacity:.5;font-size:26px}.photo-upload-btn{color:#fff;cursor:pointer;background:#1c1b189e;border:2px solid #fff;border-radius:50%;justify-content:center;align-items:center;width:30px;height:30px;font-size:13px;display:flex;position:absolute;bottom:7px;right:7px;box-shadow:0 1px 3px #0003}.photo-upload-btn:hover{background:#1c1b18d9}.dog-info{flex:1;min-width:0}.dog-name-line{flex-wrap:wrap;align-items:baseline;gap:10px;display:flex}.dog-info h2{letter-spacing:-.01em;margin:0;font-size:23px;font-weight:800}.dog-info .call-name{color:var(--muted);margin:0;font-size:15px;font-style:italic}.call-name-edit-btn{cursor:pointer;color:var(--muted);background:0 0;border:none;border-radius:6px;padding:2px 6px;font-size:13px}.call-name-edit-btn:hover{color:var(--accent);background:#5b4b7a14}.call-edit-row{flex-wrap:wrap;align-items:center;gap:8px;margin-top:6px;display:none}.call-edit-row.open{display:flex}.call-edit-row input{border:1px solid var(--line);background:var(--soft);border-radius:8px;width:160px;padding:6px 8px;font:14px/1.3 "Source Sans 3",sans-serif}.call-edit-row input:focus{background:#fff;border-color:#5b4b7a8c;outline:none}.dog-info .cdr-number{color:var(--accent);letter-spacing:.03em;background:#5b4b7a14;border:1px solid #5b4b7a2e;border-radius:999px;margin:8px 0 0;padding:3px 10px;font-size:12px;font-weight:700;display:inline-block}.dog-meta{grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:12px 18px;margin-top:14px;display:grid}.dog-meta .k{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin-bottom:1px;font-size:11px;font-weight:700;display:block}.dog-meta .v{color:var(--text);word-break:break-word;font-size:14px;font-weight:600}.dog-meta .v.empty{color:var(--muted);font-weight:500}.hw-row{border-top:1px dashed var(--line);flex-wrap:wrap;align-items:center;gap:14px;margin-top:16px;padding-top:14px;display:flex}.hw-field{align-items:center;gap:6px;font-size:13px;display:flex}.hw-field label{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:11px;font-weight:700}.hw-field input{border:1px solid var(--line);text-align:center;background:var(--soft);border-radius:8px;width:62px;padding:6px 8px;font:14px/1.3 "Source Sans 3",sans-serif}.hw-field input:focus{background:#fff;border-color:#5b4b7a8c;outline:none}.hw-save{margin-left:auto;padding:8px 16px;font-size:12px}.dog-actions{border-top:1px solid var(--line);background:var(--soft);grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:8px;padding:16px 20px;display:grid}.dog-actions .btn{text-align:left;background:#fff;border-radius:10px;justify-content:flex-start;gap:9px;width:100%;padding:11px 14px}.dog-actions .btn:hover{background:#fff;border-color:#5b4b7a52}.dog-actions .btn .ico{text-align:center;flex-shrink:0;width:18px;font-size:15px;line-height:1}.dog-cta{border-top:1px solid var(--line);padding:16px 20px}.dog-cta .btn{border-radius:12px;gap:8px;width:100%;padding:14px 20px;font-size:15px}.dog-cta .cta-note{color:var(--muted);text-align:center;margin:8px 2px 0;font-size:12px}.dog-cta .cert-name-toggle{color:var(--muted);cursor:pointer;justify-content:center;align-items:center;gap:8px;margin-top:10px;font-size:13px;display:flex}.dog-cta .cert-name-toggle input{width:auto}.action-panel{border-top:1px solid var(--line);padding:16px 20px;display:none}.action-panel.open{display:block}.action-panel h3{color:var(--accent);margin:0 0 12px;font-size:15px;font-weight:700}.form-row{margin-bottom:10px}.form-row label{color:var(--text);margin-bottom:3px;font-size:13px;font-weight:600;display:block}.form-row input,.form-row select,.form-row textarea{border:1px solid var(--line);background:var(--soft);width:100%;color:var(--text);border-radius:8px;padding:8px 10px;font:14px/1.4 "Source Sans 3",sans-serif}.form-row textarea{resize:vertical;min-height:80px}.form-row input:focus,.form-row select:focus,.form-row textarea:focus{background:#fff;border-color:#5b4b7a8c;outline:none}.form-row input[type=file]{background:#fff;padding:6px}.form-row .hint{color:var(--muted);margin-top:2px;font-size:11px}.form-actions{gap:8px;margin-top:12px;display:flex}.card-msg{border-radius:8px;margin:8px 20px;padding:8px 12px;font-size:13px;display:none}.card-msg.ok{color:#166534;background:#f0fdf4;border:1px solid #86efac;display:block}.card-msg.err{color:#991b1b;background:#fef2f2;border:1px solid #fecaca;display:block}.contact-form{display:none}.contact-form.open{display:block}.contact-form .form-grid{grid-template-columns:1fr 1fr;gap:8px 14px;display:grid}@media (max-width:500px){.contact-form .form-grid{grid-template-columns:1fr}}.toggle-row{align-items:center;gap:8px;margin-top:10px;font-size:13px;display:flex}.toggle-row input[type=checkbox]{width:auto}.msg-list{margin-top:10px}.msg-item{border-bottom:1px solid var(--line);padding:10px 0;font-size:14px}.msg-item:last-child{border-bottom:none}.msg-meta{color:var(--muted);font-size:12px}.msg-body{margin-top:4px}.no-messages{color:var(--muted);font-size:14px;font-style:italic}.no-dogs{text-align:center;color:var(--muted);padding:40px 20px;font-size:15px}@media (max-width:560px){.dog-card-top{gap:14px;padding:16px}.dog-photo,.dog-photo-placeholder{width:104px;height:104px}.dog-info h2{font-size:20px}.dog-meta{grid-template-columns:1fr 1fr;gap:10px 14px}.hw-save{margin-left:0}.dog-actions{grid-template-columns:1fr;padding:14px 16px}.dog-cta{padding:14px 16px}}.tos-overlay{z-index:1000;background:#0000008c;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.tos-modal{background:#fff;border-radius:16px;flex-direction:column;width:100%;max-width:680px;max-height:90vh;display:flex;box-shadow:0 12px 40px #00000040}.tos-modal h2{color:#1e1833;margin:0;padding:20px 24px 0;font-family:Playfair Display,Georgia,serif;font-size:20px;font-weight:700}.tos-scroll{color:var(--text);flex:1;padding:16px 24px;font-size:14px;line-height:1.6;overflow-y:auto}.tos-scroll h3{color:var(--accent);margin:18px 0 6px;font-size:15px;font-weight:700}.tos-scroll p{margin:0 0 10px}.tos-scroll ul{margin:0 0 10px;padding-left:20px}.tos-scroll li{margin-bottom:4px}.tos-footer{border-top:1px solid var(--line);text-align:center;padding:16px 24px}
