:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ink:#202020;--muted:#595959;--canvas:#fff;--gray:#f0f0f0;--bar:#eee;--line:#a7a7a7;--brand:#f90;--adopt:#ffa620;--primary:#1767a8;--primary-hover:#0c4c82;--error:#9f3a38;--focus:#145b94;--footer:#202020;--lift:0 .375rem .625rem #0000004d;--wrap:60rem;--wide:75rem;--section:clamp(2.5rem, 7vw, 5rem);--gutter:clamp(.75rem, 3.5vw, 1.5rem);--font:"PingFang SC", "Hiragino Sans GB", "Microsoft JhengHei", Arial, sans-serif}*{box-sizing:border-box}body{color:var(--ink);background:var(--canvas);font:.875rem/1.5 var(--font);margin:0}#root{flex-direction:column;min-height:100vh;display:flex}main{flex:1}img{max-width:100%;display:block}p{margin-block:0 .75rem}a{color:var(--primary);text-underline-offset:.18em}a:hover{color:var(--primary-hover)}:where(a,button,input,select,textarea):focus-visible{outline:.18rem solid var(--focus);outline-offset:.15rem}:where(a,button):active{filter:brightness(.88)}button,input,select,textarea{font:inherit}button,.action{background:var(--primary);border:1px solid var(--primary);color:var(--canvas);cursor:pointer;border-radius:.25rem;min-height:2.25rem;padding:.35rem .9rem}button:hover,.action:hover{background:var(--primary-hover);color:var(--canvas)}button:disabled{color:var(--muted);background:var(--bar);border-color:var(--line);cursor:not-allowed}.action{align-items:center;gap:.5rem;text-decoration:none;display:inline-flex}.icon{vertical-align:-.12em;flex:none;width:1em;height:1em}.wrap{width:min(var(--wrap), calc(100% - var(--gutter) * 2));margin-inline:auto}.section{padding-block:var(--section)}.gray{background:var(--gray)}.sr-only,.skip-link:not(:focus){clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.skip-link:focus{z-index:2;background:var(--canvas);padding:.5rem;position:absolute;top:.25rem;left:.25rem}.site-header{border-bottom:.1875rem solid var(--brand)}.small-bar{background:var(--bar);color:var(--muted);font-size:.8rem}.account-links{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:1rem;min-height:2.4rem;display:flex}.account-links a,.account-links span{align-items:center;gap:.35rem;display:inline-flex}.account-links a,.text-button{color:var(--muted);text-decoration:none}.account-links a:hover,.text-button:hover{color:var(--primary);text-decoration:underline}.text-button{background:0 0;border:0;min-height:1.75rem;padding:0}.text-button:hover{background:0 0}.logo-bar{justify-content:space-between;align-items:end;gap:.75rem 1.5rem;min-height:5rem;padding-block:.4rem;display:flex}.logo-bar img{width:auto;height:3.75rem}.logo-bar nav{flex-wrap:wrap;gap:.35rem clamp(.6rem,2.5vw,2rem);display:flex}.logo-bar nav a{color:inherit;text-decoration:none}.logo-bar nav a:hover{text-decoration:underline}.site-footer{background:var(--footer);color:var(--gray);padding-block:2.5rem}.site-footer a{color:inherit}.carousel{width:min(100%, var(--wide));margin-inline:auto;position:relative}.carousel-image{aspect-ratio:3;object-fit:cover;width:100%;height:auto}.carousel-arrow,.pause,.carousel-dot{background:#000000c2;border:0}.carousel-arrow:hover,.pause:hover,.carousel-dot:hover{background:var(--ink)}.carousel-arrow{border-radius:50%;width:2rem;min-height:2rem;padding:0;position:absolute;top:50%;transform:translateY(-50%)}.previous{left:.5rem}.next{right:.5rem}.carousel-controls{justify-content:center;align-items:center;gap:.3rem;display:flex;position:absolute;inset:auto 0 .45rem}.carousel-dot{border-radius:.25rem;place-items:center;width:1.5rem;min-height:1.5rem;padding:0;display:grid}.carousel-dot:before{content:"";border:1px solid var(--canvas);border-radius:50%;width:.5rem;height:.5rem}.carousel-dot[aria-pressed=true]:before{background:var(--canvas)}.pause{min-height:1.5rem;padding:0 .35rem}.carousel :focus-visible{outline-color:var(--canvas);box-shadow:0 0 0 .25rem var(--ink)}.intro-grid{text-align:left;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.75rem;display:grid}.intro-grid div{max-width:12rem;margin-inline:auto}.intro-grid img{margin-inline:auto}.intro-grid p{margin:clamp(1rem,3vw,2.25rem) 0 0;font-size:.75rem}.pet-list{grid-template-columns:repeat(5,minmax(0,10rem));gap:1.25rem;margin:0;padding:.625rem;list-style:none;display:grid}.pet-card{color:var(--ink);text-decoration:none;display:block}.pet-card:hover strong{text-decoration:underline}.pet-thumb,.detail-image{aspect-ratio:1;object-fit:cover;width:100%;box-shadow:var(--lift)}.image-fallback{background:var(--bar);color:var(--muted);place-items:center;display:grid}.image-fallback .icon{width:2rem;height:2rem}.pet-caption{grid-template-columns:auto 1fr;column-gap:.5rem;margin-top:.55rem;font-size:.75rem;line-height:1.25;display:grid}.pet-caption strong{overflow-wrap:anywhere;grid-row:span 2;align-self:center;font-size:1.125rem}.pet-caption span{text-align:end;overflow-wrap:anywhere}.pet-filters{flex-wrap:wrap;gap:.5rem 1.25rem;margin:0 .625rem 1rem;display:flex}.pet-filters [aria-current]{color:var(--ink);-webkit-text-decoration-color:var(--brand);text-decoration-color:var(--brand);font-weight:700;text-decoration-thickness:.15rem}.pet-detail{grid-template-columns:minmax(0,22.5rem) minmax(0,1fr);gap:1.875rem;display:grid}.pet-data h1{margin:0;font-size:2rem}.field-label,dt{color:var(--muted);font-size:.75rem}.detail-row{flex-wrap:wrap;gap:1rem clamp(1rem,5vw,3.75rem);margin-block:1.1rem;display:flex}dd{margin:.15rem 0 0}.adoption-action{text-align:center;margin:2.5rem 0 1rem}.adoption-button{background:var(--adopt);border-color:var(--adopt);color:var(--ink);border-radius:.625rem;padding-inline:2.5rem;font-weight:700}.adoption-button:hover{background:var(--brand);color:var(--ink)}.pet-story{overflow-wrap:anywhere}.pet-photos{flex-wrap:wrap;gap:1rem;display:flex}.pet-photos>*{width:min(12rem,100%);min-height:6rem}.account-form{max-width:25rem}.adoption-form{max-width:43rem}.account-form label,.adoption-form>label,.form-group>label{gap:.3rem;margin-bottom:1rem;display:grid}input:not([type=checkbox],[type=radio]),select,textarea{width:100%;min-width:0;min-height:2.15rem;color:var(--ink);background:var(--canvas);border:1px solid var(--line);border-radius:.25rem;padding:.35rem .5rem;display:block}textarea{resize:vertical}.account-form input:hover,.form-group input:hover,.form-group select:hover,.form-group textarea:hover{border-color:var(--focus)}input[type=checkbox],input[type=radio]{accent-color:var(--primary)}.form-actions{flex-wrap:wrap;align-items:center;gap:.85rem;display:flex}.code-row{align-items:end;gap:.35rem;margin-bottom:1rem;display:flex}.code-row label{flex:1;min-width:0;margin:0}.code-row button{flex:none}.form-group h2{text-align:center;border-bottom:1px solid var(--line);margin-block:1.5rem 1rem;padding-bottom:.4rem;font-size:1rem}fieldset{border:0;min-width:0;margin:0 0 1rem;padding:0}legend{padding:0}.options{flex-wrap:wrap;gap:.25rem 1rem;margin-top:.25rem;display:flex}.options label{align-items:center;gap:.25rem;min-height:1.5rem;display:flex}.error{color:var(--error)}.test-note,.feedback{color:var(--muted)}.feedback{padding:.75rem .625rem}@media (width<=52rem){.pet-list{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width<=37rem){.logo-bar{flex-direction:column;align-items:start}.logo-bar img{height:3rem}.intro-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem}.pet-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:.875rem}.pet-detail{grid-template-columns:minmax(0,1fr)}.detail-image{max-width:22.5rem}.pet-caption{grid-template-columns:minmax(0,1fr)}.pet-caption span{text-align:start}}.admin-layout{grid-template-columns:10rem minmax(0,1fr);gap:1.5rem;display:grid}.admin-content h1{margin-top:0}.admin-nav{background:var(--gray);align-self:start;padding:.75rem}.admin-nav a{margin-top:.5rem;display:block}.admin-filters{flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:1rem;display:flex}.admin-filters select{width:auto}.table-scroll{border:1px solid var(--line);overflow:auto}.admin-content table{border-collapse:collapse;white-space:nowrap;width:100%}.admin-content th,.admin-content td{text-align:start;padding:.6rem .75rem}.admin-content th{background:var(--bar)}.admin-content tbody tr+tr{border-top:1px solid var(--line)}.admin-pages{gap:1rem;margin-top:.75rem;display:flex}.application-review>div{border-bottom:1px solid var(--line);padding-block:.55rem}.application-review dd{overflow-wrap:anywhere;white-space:pre-wrap}@media (width<=37rem){.admin-layout{grid-template-columns:minmax(0,1fr)}}.admin-nav a+strong{margin-top:1rem;display:block}.ticket-grid{grid-template-columns:repeat(auto-fit,minmax(min(13rem,100%),1fr));gap:1rem;display:grid}.ticket-card{border:1px solid var(--line);padding:.9rem}.ticket-card h2{margin:0;font-size:1.1rem}.ticket-card dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;margin-bottom:0;display:grid}.developing{background:var(--brand);color:#fff;flex-direction:column;justify-content:center;align-items:center;min-height:70vh;display:flex}.developing img{width:180px}.developing p{margin-top:1rem;font-size:18px}.developing a{color:#fff}.hospital-registration>img{width:100%}.hospital-registration form{padding:20px}.hospital-registration .field{margin-bottom:14px}.hospital-registration .field>label{margin-bottom:5px;font-weight:700;display:block}.hospital-registration h4{color:var(--brand);border-bottom:1px solid var(--line);padding-top:24px;padding-bottom:10px}.hospital-registration .checkbox{gap:5px;margin-right:12px;display:inline-flex}.hospital-registration button{background:var(--brand);width:100%;color:var(--ink);border-color:var(--brand)}.developing{min-height:100vh}.registration-logo{width:112px;margin:10px 20px}:root{--admin-sidebar:#333;--admin-canvas:#f5f5f5;--admin-surface:#fefefe;--admin-ink:#515a6e;--admin-heading:#17233d;--admin-muted:#808695;--admin-line:#dcdee2;--admin-row:#f8f8f9;--admin-hover:#ebf7ff;--admin-primary:#2d8cf0;--admin-primary-hover:#57a3f3;--admin-danger:#ed4014;--admin-overlay:#00000073;--admin-radius:4px;--admin-small:8px;--admin-space:20px;--admin-padding:40px;--admin-sidebar-width:240px;--admin-header-height:60px;--admin-crumb-height:40px}.admin-frame{grid-template-columns:var(--admin-sidebar-width) minmax(0,1fr);grid-template-rows:var(--admin-header-height) var(--admin-crumb-height) 1fr;min-height:100vh;color:var(--admin-ink);background:var(--admin-canvas);grid-template-areas:"logo header""logo breadcrumb""menu content";font-size:14px;line-height:1.5;display:grid}.admin-frame a{color:var(--admin-primary);text-decoration:none}.admin-frame a:hover{color:var(--admin-primary-hover)}.admin-brand{background:var(--admin-sidebar);grid-area:logo;justify-content:center;align-items:center;display:flex}.admin-brand img{width:120px}.admin-header{background:var(--admin-surface);padding:0 var(--admin-padding);justify-content:space-between;align-items:center;gap:var(--admin-space);grid-area:header;display:flex}.admin-header form{width:20rem;max-width:45%;position:relative}.admin-header input{padding-right:32px}.admin-header form button{min-height:30px;color:var(--admin-muted);background:0 0;border:none;padding:4px 8px;position:absolute;top:1px;right:1px}.admin-tools{align-items:center;gap:var(--admin-space);white-space:nowrap;display:flex}.admin-tools a,.admin-tools button{color:var(--admin-ink)}.admin-tools svg{width:16px;height:16px}.admin-crumb{align-items:center;gap:var(--admin-small);padding-left:var(--admin-space);white-space:nowrap;grid-area:breadcrumb;display:flex;overflow:hidden}.admin-crumb a{color:var(--admin-ink)}.admin-sidebar{background:var(--admin-sidebar);color:#eee;grid-area:menu}.admin-sidebar summary{cursor:pointer;padding:14px 24px;list-style:none;position:relative}.admin-sidebar summary:after{content:"⌄";position:absolute;right:24px}.admin-sidebar details[open] summary:after{transform:rotate(180deg)}.admin-sidebar a{color:#ccc;padding:12px 24px 12px 43px;display:block}.admin-sidebar a:hover{color:#fff;background:#444}.admin-sidebar a[aria-current]{background:var(--admin-primary);color:#fff}.admin-main{min-width:0;padding:0 var(--admin-space) var(--admin-space) var(--admin-padding);grid-area:content}.admin-title{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.admin-frame button,.admin-frame .action{border-radius:var(--admin-radius);background:var(--admin-primary);border-color:var(--admin-primary);color:#fff;min-height:32px;padding:5px 15px}.admin-frame button:hover,.admin-frame .action:hover{background:var(--admin-primary-hover);border-color:var(--admin-primary-hover)}.admin-frame .text-button{color:var(--admin-primary);background:0 0;border:0;min-height:24px;padding:0}.admin-frame .text-button:hover{color:var(--admin-primary-hover)}.admin-frame .danger{color:var(--admin-danger)}.admin-frame .secondary{color:var(--admin-ink);border-color:var(--admin-line);background:#fff}.admin-frame button:disabled{opacity:.55;cursor:not-allowed}.admin-frame input:not([type=radio],[type=checkbox]),.admin-frame select,.admin-frame textarea{border-color:var(--admin-line);border-radius:var(--admin-radius);min-height:32px;color:var(--admin-ink);padding:4px 7px}.admin-frame input:hover,.admin-frame select:hover,.admin-frame textarea:hover{border-color:var(--admin-primary-hover)}.admin-frame input[aria-invalid=true]{border-color:var(--admin-danger)}.admin-frame input[type=radio],.admin-frame input[type=checkbox]{accent-color:var(--admin-primary)}.admin-frame .table-scroll{border:1px solid var(--admin-line);background:#fff;width:100%}.admin-table{border-collapse:collapse;text-align:left;width:100%;font-size:14px}.admin-table th{background:var(--admin-row);color:var(--admin-ink);font-weight:600}.admin-table th,.admin-table td{border-bottom:1px solid var(--admin-line);vertical-align:middle;height:48px;padding:12px 18px}.admin-table tbody tr:hover{background:var(--admin-hover)}.admin-table tbody tr:last-child td{border-bottom:0}.admin-table .actions{flex-wrap:wrap;gap:4px 10px;min-width:120px;display:flex}.admin-table th{white-space:nowrap}.admin-table .empty{text-align:center;height:80px;color:var(--admin-muted)}.admin-toolbar{margin:var(--admin-space) 0;flex-wrap:wrap;align-items:center;gap:12px;display:flex}.admin-toolbar select,.admin-toolbar input{width:auto;max-width:100%}.admin-form{background:var(--admin-surface);padding:var(--admin-padding);margin:var(--admin-space) 0;width:500px;max-width:100%}.admin-form label.field{margin-bottom:24px;display:block}.admin-form .field>span,.admin-form legend{margin-bottom:10px;font-weight:700;display:block}.admin-form .options{margin-top:0}.admin-form .options label{gap:5px;font-weight:400;display:inline-flex}.admin-form fieldset{margin-bottom:24px}.admin-form textarea{min-height:100px}.admin-panel{background:var(--admin-surface);padding:var(--admin-space);margin-top:var(--admin-space)}.admin-panel h2{margin:0 0 var(--admin-space);font-size:16px}.admin-panel p{margin-bottom:12px}.admin-modal{width:520px;max-width:calc(100vw - 24px);color:var(--admin-ink);border:0;border-radius:6px;padding:0;box-shadow:0 4px 12px #00000026}.admin-modal::backdrop{background:var(--admin-overlay)}.admin-modal .modal-title{border-bottom:1px solid var(--admin-line);justify-content:space-between;align-items:center;padding:14px 16px;display:flex}.admin-modal h2{color:var(--admin-heading);margin:0;font-size:14px}.admin-modal .admin-form{width:auto;margin:0;padding:16px}.admin-modal .modal-actions{border-top:1px solid var(--admin-line);justify-content:end;gap:10px;margin-top:20px;padding:12px 0 0;display:flex}.admin-modal img{width:100%}.neuter-cards{flex-wrap:wrap;margin:0;display:flex}.neuter-card{width:350px;max-width:100%;margin:var(--admin-space);border-radius:var(--admin-radius);background:#fff;border:1px solid #e8eaec}.neuter-card h2{color:var(--admin-heading);border-bottom:1px solid #e8eaec;margin:0;padding:14px 16px;font-size:14px}.neuter-card .card-body{padding:16px}.neuter-card .half{width:49%;display:inline-block}.neuter-card p{margin-bottom:4px}.neuter-card .photos{flex-wrap:wrap;gap:5px;margin-bottom:10px;display:flex}.neuter-card .photos button{background:0 0;border:0;padding:0}.neuter-card .photos img{object-fit:cover;border-radius:8px;width:79px;height:79px}.admin-total{text-align:center;border:1px solid var(--admin-line);background:#fff;border-top:0;padding:12px;font-weight:700}.admin-home-links{gap:var(--admin-space);grid-template-columns:repeat(auto-fit,minmax(180px,1fr));display:grid}.admin-home-links a{margin-bottom:10px;display:block}.admin-frame progress{width:100px;accent-color:var(--admin-primary)}.front-menu{position:relative}.front-submenu{z-index:10;background:#fff;min-width:12rem;padding:8px 0;display:none;position:absolute;top:100%;left:0;box-shadow:0 4px 10px #0002}.front-submenu a{white-space:nowrap;padding:6px 12px;display:block}.front-menu:hover .front-submenu,.front-menu:focus-within .front-submenu{display:block}.print-toolbar{flex-wrap:wrap;gap:12px;margin:20px;display:flex}.print-page{color:#222;background:#fff;max-width:1100px;margin:20px auto;padding:30px}.print-page h1{text-align:center;font-size:24px}.print-page table{border-collapse:collapse;width:100%}.print-page th,.print-page td{border:1px solid #888;padding:6px}.receipt{width:190mm;max-width:100%;margin:30px auto;padding:10px}.receipt h2{text-align:center;color:#b12029}.receipt table{border-collapse:collapse;width:100%}.receipt td,.receipt th{border:1px solid #b12029;padding:6px}@media (width<=800px){.admin-frame{grid-template-columns:170px minmax(0,1fr)}.admin-header{padding-inline:16px}.admin-header form{display:none}.admin-main{padding:0 12px 20px}.admin-sidebar a{padding-left:24px}.admin-tools{gap:12px}.neuter-card{margin:12px 0}}@media (width<=520px){.admin-frame{grid-template:"logo""header""menu""breadcrumb""content"1fr/minmax(0,1fr)}.admin-brand{min-height:60px}.admin-header{min-height:50px}.admin-sidebar{flex-wrap:wrap;display:flex}.admin-sidebar details{width:50%}.admin-sidebar summary{padding:10px 16px}.admin-sidebar a{padding:10px 12px}.admin-crumb{min-height:40px;padding-inline:12px}.admin-form{padding:20px}.admin-table th,.admin-table td{padding:10px 12px}.admin-tools{justify-content:space-between;gap:10px;width:100%}}@media print{@page{size:A4;margin:12mm}.admin-brand,.admin-sidebar,.admin-header,.admin-crumb,.print-toolbar,.no-print{display:none!important}.admin-frame{background:#fff;display:block}.admin-main{padding:0}.print-page{max-width:none;margin:0;padding:0}.receipt{break-after:page;margin:0}thead{display:table-header-group}tr{break-inside:avoid}}.admin-sidebar details{background:#515a6e}.admin-sidebar details[open]{background:#363e4f}.admin-sidebar summary{background:#515a6e}.admin-sidebar a:hover{background:#2b3342}.agreement{line-height:1.8}.agreement h1{margin-bottom:40px}.agreement .signature{margin-top:30px}.agreement .signature td{border:0}.agreement .price{break-before:page;margin-top:30px}.agreement .underline{text-decoration:underline}.agreement li{margin-bottom:8px}.pet-avatar-preview{object-fit:cover;width:150px;height:150px;margin-bottom:12px}.pet-photo-editor{flex-wrap:wrap;gap:8px;display:flex}.pet-photo-editor img{object-fit:cover;border-radius:4px;width:60px;height:60px}.admin-frame .upload-zone{white-space:normal;border-style:dashed;width:100%;min-height:90px;margin-top:10px}.crop-editor{padding:20px}.crop-editor label{margin:12px 0;display:block}.crop-preview{width:200px;height:200px;margin:0 auto;position:relative;overflow:hidden}.crop-preview img{position:absolute}.rich-editor{border:1px solid var(--admin-line);background:#fff;border-radius:4px}.rich-toolbar{border-bottom:1px solid var(--admin-line);flex-wrap:wrap;gap:4px;padding:6px;display:flex}.rich-editor [contenteditable]{outline-color:var(--admin-primary);min-height:250px;padding:12px}.pet-list-panel{padding:var(--admin-padding);margin-top:0}.pet-list-panel>.admin-toolbar{margin-top:0}.pet-filter{max-width:600px;margin-bottom:24px}.pet-filter .field{max-width:400px;margin-bottom:20px;display:block}.pet-filter legend{margin-bottom:8px}.pet-filter fieldset{margin-bottom:20px}.pet-table-avatar{border-radius:var(--admin-radius);object-fit:cover;width:60px;height:60px}@media (width<=520px){.pet-list-panel{padding:16px}}.bill-caption{text-align:center;font-size:16px}.bill-footer{margin-top:24px;padding-bottom:100px;display:flow-root}.bill-footer h2{margin:20px 0 8px;font-size:16px}.bill-footer b{font-weight:600}.bill-page h1{margin:20px 0 28px}.bill-page h2{font-size:16px}.bill-hospital p{margin:0;line-height:1.6}.bill-footer{break-inside:avoid;padding-bottom:0}.bill-footer>div:last-child{width:8em;margin:30px 0 0 auto;float:none!important;position:static!important}.admin-form.pet-form{width:100%;margin-top:0}.pet-form>.field,.pet-form>fieldset{max-width:500px}.avatar-upload-row{align-items:flex-start;gap:10px;display:flex}.avatar-placeholder{border:1px dashed var(--admin-line);border-radius:var(--admin-radius);flex-shrink:0;width:150px;height:150px}.avatar-upload-actions{width:240px;max-width:100%}.avatar-help{background:#fffbe6;border:1px solid #ffe58f;padding:10px;font-weight:400}.avatar-upload-actions input{max-width:100%}.age-inputs{align-items:center;gap:8px;display:flex}.age-inputs input{max-width:80px}@media (width<=520px){.avatar-upload-row{flex-wrap:wrap}}
