.pet-quality{border:1px solid var(--line);background:linear-gradient(145deg,var(--panel),var(--bg));border-radius:13px;min-width:0;margin:22px 0;padding:19px 16px}.pet-quality-heading{color:var(--accent);align-items:center;gap:8px;display:flex}.pet-quality-heading h3{letter-spacing:-.4px;color:var(--ink);font-size:15px;font-weight:650;line-height:1.7}.pet-quality-intro{color:var(--muted);word-break:keep-all;margin:8px 0 18px;font-size:12px;line-height:1.85}.pet-quality-label{align-items:center;gap:6px;margin:0 0 9px;font-size:12px;font-weight:600;line-height:1.7;display:flex}.pet-quality-label>span{color:var(--muted);font-size:10px;font-weight:400}.pet-quality-options{grid-template-columns:1fr;gap:7px;margin-bottom:17px;display:grid}.pet-quality-options button{border:1px solid var(--line);text-align:left;background:var(--panel);border-radius:9px;min-height:58px;padding:12px}.pet-quality-options button[aria-pressed=true]{background:var(--tint);border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.pet-quality-options strong{align-items:center;gap:5px;font-size:12px;font-weight:600;line-height:1.6;display:flex}.pet-quality-options strong>svg:last-child:not(:first-child){margin-left:auto}.pet-quality-options small{color:var(--muted);word-break:keep-all;margin-top:3px;font-size:11px;line-height:1.75;display:block}.pet-quality .pet-traits{margin-bottom:0;display:block}.pet-traits textarea{resize:vertical;background:var(--panel);border:1px solid var(--line);width:100%;min-height:90px;max-height:240px;color:var(--ink);border-radius:8px;margin-top:8px;padding:11px;font-size:12px;line-height:1.9;display:block}.pet-traits textarea::placeholder{color:var(--muted);font-weight:400}.pet-quality-helper{color:var(--muted);justify-content:space-between;gap:8px;margin:5px 0 17px;font-size:10px;line-height:1.7;display:flex}.pet-quality-helper>span:last-child{flex-shrink:0}.pet-quality-speed{grid-template-columns:1fr 1fr;margin-bottom:7px}.pet-quality-speed button{padding:10px 9px}.pet-quality-note{color:var(--muted);word-break:keep-all;font-size:11px;line-height:1.85}.pet-quality-presets{border-top:1px solid var(--line);margin-top:17px;padding-top:17px}.pet-portrait-list{gap:7px;margin-bottom:9px;display:grid}.pet-portrait-list button{text-align:left;border:1px solid var(--line);background:var(--panel);border-radius:9px;align-items:center;gap:10px;width:100%;min-height:62px;padding:10px;display:flex}.pet-portrait-list button:hover:not(:disabled),.pet-quality-options button:hover:not(:disabled){border-color:var(--accent)}.pet-portrait-symbol{background:var(--tint);width:35px;height:35px;color:var(--accent);border-radius:9px;flex-shrink:0;place-items:center;font-size:25px;display:grid}.pet-portrait-list button>span:nth-child(2){flex:1}.pet-portrait-list strong{font-size:12px;font-weight:600;line-height:1.65;display:block}.pet-portrait-list small{color:var(--muted);margin-top:2px;font-size:10px;line-height:1.7;display:block}.pet-portrait-list button>span:last-child{color:var(--accent)}.pet-quality-notice{color:var(--accent);margin-top:12px;font-size:11px;line-height:1.9}.pet-photo-guide{border:1px solid var(--line);background:var(--bg);color:var(--muted);border-radius:10px;margin:12px 0 0;padding:13px 12px}.pet-photo-guide-heading{color:var(--ink);flex-wrap:wrap;align-items:center;gap:6px;display:flex}.pet-photo-guide-heading strong{font-size:12px;font-weight:600;line-height:1.6}.pet-photo-guide-heading>span{color:var(--muted);font-variant-numeric:tabular-nums;margin-left:auto;font-size:10px}.pet-photo-hints{margin:8px 0;font-size:11px;line-height:1.85}.pet-photo-hints ul,.pet-photo-checklist{margin:7px 0;padding-left:17px;font-size:11px;line-height:1.85}.pet-photo-hints li+li,.pet-photo-checklist li+li{margin-top:5px}.pet-photo-hints li{color:var(--accent)}.pet-photo-caveat{border-top:1px solid var(--line);margin-top:9px;padding-top:8px;font-size:10px;line-height:1.85}@media (max-width:700px){.pet-quality{padding:18px 13px}.pet-quality-heading h3{font-size:16px}.pet-quality-label,.pet-quality-options strong,.pet-portrait-list strong{font-size:13px}.pet-quality-options small,.pet-quality-note,.pet-portrait-list small,.pet-photo-hints,.pet-photo-checklist{font-size:12px}.pet-quality-helper,.pet-photo-caveat{font-size:11px}.pet-traits textarea{font-size:16px}.pet-photo-guide-heading strong{font-size:13px}.pet-quality-speed small{font-size:11px}}.likeness-stage{background:var(--tint);min-height:260px}.likeness-pair{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;width:100%;padding:14px;display:grid}.likeness-pair figure{background:var(--panel);border-radius:9px;min-width:0;margin:0;overflow:hidden}.likeness-pair img{object-fit:contain;width:100%;height:clamp(210px,28vw,400px);display:block}.likeness-pair figcaption{text-align:center;color:var(--muted);padding:12px 6px;font-size:12px}.pet-refinement-context{border:1px solid var(--line);background:var(--tint);border-radius:12px;margin:20px 0;padding:16px}.pet-refinement-context>strong{font-size:14px}.pet-refinement-context>p{color:var(--muted);margin:9px 0 14px;font-size:12px;line-height:1.9}.pet-refinement-context>div{grid-template-columns:1fr 1fr;gap:10px;display:grid}.pet-refinement-context figure{min-width:0;margin:0}.pet-refinement-context img{aspect-ratio:1;object-fit:contain;background:var(--panel);border-radius:8px;width:100%}.pet-refinement-context figcaption{text-align:center;margin-top:5px;font-size:11px;line-height:1.8}.pet-refinement-context>button{min-height:44px;color:var(--accent);text-underline-offset:4px;margin-top:12px;font-size:12px;text-decoration:underline}.pet-app .preview-tabs{flex-wrap:wrap;gap:4px}@media (max-width:700px){.likeness-pair{gap:8px;padding:9px}.likeness-pair img{height:240px}.likeness-pair figcaption{padding:10px 4px;font-size:12px}.pet-app .preview-tabs button{min-height:44px;font-size:12px}}.portrait-modes{grid-template-columns:1fr 1fr;gap:8px;margin:0 0 24px;display:grid}.portrait-modes button{color:#4b473d;text-align:left;background:#fffdf8;border:1px solid #ddd7ca;border-radius:14px;justify-content:center;align-items:center;gap:8px;min-height:74px;padding:12px 8px;display:flex}.portrait-modes button[aria-pressed=true]{background:#faf0df;border-color:#ae7540;box-shadow:inset 0 0 0 1px #ae7540}.portrait-modes strong,.portrait-modes small{display:block}.portrait-modes strong{font-size:14px}.portrait-modes small{color:#716858;margin-top:5px;font-size:11px;line-height:1.5}.together-upload h3{margin:18px 0 10px;font-size:14px}.together-upload .owner-upload{min-height:190px}.together-upload .owner-upload.has-photo{height:220px}.together-upload .owner-upload img{object-fit:contain;background:#f5f0e8}.together-options{gap:16px;display:grid}.together-note,.together-privacy{color:#736655;font-size:12px;line-height:1.8}.together-note{background:#f6f1e8;border-radius:12px;margin:4px 0;padding:14px}.together-reference{color:#736655;background:#f7f3ec;border-radius:12px;align-items:center;gap:14px;margin-top:14px;padding:12px;font-size:12px;line-height:1.6;display:flex}.together-reference img{object-fit:contain;background:#eee6da;border-radius:8px;width:66px;height:76px}.portrait-modes button:focus-visible{outline-offset:3px;outline:3px solid #956030}@media (max-width:380px){.portrait-modes button{gap:5px;padding:10px 5px}.portrait-modes strong{font-size:13px}.portrait-modes small{font-size:10px}}.photo-processing-summary{color:var(--muted);align-items:flex-start;gap:9px;min-width:0;margin:18px 0;display:flex}.photo-processing-summary>svg{flex:none;margin-top:5px}.photo-processing-summary>div{flex:1;min-width:0}.photo-processing-summary p{word-break:keep-all;overflow-wrap:anywhere;margin:1px 0 0;font-size:13px;line-height:1.6}.photo-processing-link{min-height:40px;color:var(--ink);text-underline-offset:4px;text-align:left;word-break:keep-all;padding:3px 0;font-size:13px;line-height:1.6;text-decoration:underline}.photo-processing-dialog{box-sizing:border-box;width:min(540px,100vw - 32px);max-height:calc(100dvh - 32px);padding:30px;overflow-y:auto}.photo-processing-dialog h2{word-break:keep-all;font-size:23px;line-height:1.4}.photo-processing-dialog p{word-break:keep-all;overflow-wrap:anywhere;font-size:14px;line-height:1.7}.photo-processing-facts{border-top:1px solid var(--line);margin:22px 0}.photo-processing-facts>div{border-bottom:1px solid var(--line);word-break:keep-all;overflow-wrap:anywhere;grid-template-columns:94px minmax(0,1fr);gap:12px;padding:13px 0;font-size:14px;line-height:1.7;display:grid}.photo-processing-facts dt{color:var(--muted)}.photo-processing-facts dd{min-width:0;color:var(--ink);margin:0}.photo-processing-dialog .photo-processing-consent{border-top:1px solid var(--line);color:var(--ink);word-break:keep-all;overflow-wrap:anywhere;margin:20px 0 12px;padding-top:16px;font-size:14px;line-height:1.7}.photo-processing-consent input{width:20px;height:20px;margin-top:2px}.photo-processing-dialog .photo-processing-cost{color:var(--muted);font-size:13px}.photo-processing-actions{gap:10px;margin-top:20px;display:flex}.photo-processing-actions>.secondary-button{flex:0 0 72px;justify-content:center}.photo-processing-actions>.generate-button{word-break:keep-all;flex:1;width:auto;min-width:0}@media (max-width:480px){.photo-processing-dialog{padding:24px 20px}.photo-processing-dialog h2{font-size:22px}.photo-processing-facts>div{grid-template-columns:1fr;gap:3px}.photo-processing-facts dt{font-size:13px}.photo-processing-actions{flex-wrap:wrap}.photo-processing-actions>.generate-button{flex-basis:calc(100% - 82px);font-size:14px}}.pet-export-panel{border:1px solid var(--line);background:var(--panel);border-radius:11px;margin:18px 0 22px;padding:20px}.pet-export-panel h3{margin-bottom:8px;font-size:15px;font-weight:600;line-height:1.6}.pet-export-panel>p,.pet-export-panel>small{color:var(--muted);font-size:12px;line-height:1.9}.pet-output-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:16px 0;display:grid}.pet-output-options button{border:1px solid var(--line);border-radius:8px;min-height:48px;padding:10px 6px;font-size:12px;line-height:1.6}.pet-output-options button[aria-pressed=true]{background:var(--tint);border-color:var(--accent);color:var(--accent);font-weight:600}.pet-export-panel .card-editor-body{padding:0}.pet-export-panel .result-actions{margin-bottom:10px}.pet-export-panel .export-selection{color:var(--ink);font-weight:550}.pet-export-preview{object-fit:contain;border:1px solid var(--line);border-radius:8px;max-width:100%;max-height:42dvh;margin:16px auto;display:block}.pet-export-dialog .share-output-label{color:var(--ink);margin:8px 0;font-weight:600}.generation-reuse{border:1px solid var(--line);background:var(--tint);border-radius:10px;padding:15px}.generation-reuse p{color:var(--muted);margin-bottom:12px;font-size:12px;line-height:1.9}.generation-reuse .secondary-button{width:100%;margin-top:10px;font-size:12px}@media (max-width:420px){.pet-export-panel{padding:16px}.pet-output-options{gap:5px}.pet-output-options button{font-size:11px}}.visitor-panel{color:#604b3e;word-break:keep-all;overflow-wrap:anywhere;background:#fffaf5;border:1px solid #e6d6c8;border-radius:14px;margin:16px 0 20px;padding:20px 22px;line-height:1.8}.visitor-heading{justify-content:space-between;align-items:center;gap:16px;display:flex}.visitor-heading strong{font-size:15px;font-weight:650;display:block}.visitor-kicker{color:#9b7a62;letter-spacing:.02em;margin-bottom:3px;font-size:11px;display:block}.visitor-panel p{margin:8px 0;font-size:13px}.visitor-panel small{color:#8a7568;font-size:12px;line-height:1.85;display:block}.visitor-check{white-space:nowrap;color:#93684f;min-height:44px;padding:8px 10px;font-size:12px;text-decoration:underline}.visitor-actions{flex-wrap:wrap;align-items:center;gap:10px;margin:13px 0;display:flex}.visitor-actions button,.visitor-actions a{color:#805137;text-align:center;background:#f7e8da;border:1px solid #d8bdac;border-radius:8px;justify-content:center;align-items:center;min-height:44px;padding:10px 15px;font-size:13px;display:inline-flex}.visitor-actions a:not(.visitor-signin){background:0 0}.visitor-legacy{margin-top:9px}.visitor-panel .visitor-error{color:#8d473a;background:#f4e3dc;border-radius:8px;margin-top:13px;padding:10px 12px;font-size:12px}@media (max-width:700px){.visitor-panel{padding:17px 15px}.visitor-heading{align-items:flex-start;gap:8px}.visitor-heading strong{font-size:14px}.visitor-actions{align-items:stretch}.visitor-actions button,.visitor-actions a{font-size:13px}.visitor-panel small{font-size:12px}.visitor-panel p{font-size:13px}}
