.repair-page{gap:var(--space-8);padding-bottom:var(--space-6);display:grid}.repair-page h2{font-size:var(--text-section);margin-bottom:var(--space-4)}.repair-page h3{font-size:var(--text-lg);margin-bottom:var(--space-2)}.repair-page p{color:var(--text-secondary);line-height:1.65}.repair-hero{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);display:grid;overflow:hidden}.repair-hero-copy{z-index:1;padding:var(--space-5);align-content:center;justify-items:start;gap:var(--space-4);display:grid}.repair-hero h1{font-size:clamp(2rem,4vw,3.5rem);line-height:1.1}.repair-hero small{color:var(--text-secondary)}.repair-hero-art{min-height:180px;position:relative}.repair-hero-art img{object-fit:cover;object-position:center}.repair-hero-art:after{content:"";background:linear-gradient(180deg, var(--surface), transparent 38%);pointer-events:none;position:absolute;inset:0}.repair-icon{width:var(--space-10);height:var(--space-10);border-radius:var(--radius-sm);color:var(--brand);background:var(--brand-wash);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.repair-devices{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));padding:0;list-style:none;display:grid}.repair-devices li{min-width:0}.repair-devices button{isolation:isolate;width:100%;height:100%;padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-lg);background:radial-gradient(ellipse at 50% 35%, var(--surface-elevated), var(--surface) 75%);color:var(--text-primary);font:inherit;text-align:left;cursor:pointer;display:grid;position:relative}.repair-devices button:before{content:"";z-index:-1;border-radius:inherit;background:radial-gradient(ellipse at 50% 35%, var(--brand-wash), transparent 85%);box-shadow:inset 0 0 0 1px var(--brand), 0 8px 24px var(--brand-wash);opacity:0;pointer-events:none;transition:opacity .4s;position:absolute;inset:0}.repair-device-circuit{inset:1px 1px calc(var(--touch-target) + var(--space-3));z-index:-1;border-radius:inherit;pointer-events:none;position:absolute;overflow:hidden;-webkit-mask-image:radial-gradient(at 50% 40%,#000 25%,#0000 85%);mask-image:radial-gradient(at 50% 40%,#000 25%,#0000 85%)}.repair-device-circuit:before,.repair-device-pulse{position:absolute;inset:0;-webkit-mask-image:url(/images/repair/board-traces.svg);mask-image:url(/images/repair/board-traces.svg);-webkit-mask-size:360px 180px;mask-size:360px 180px}.repair-device-circuit:before{content:"";background:var(--circuit-color);opacity:.035;transition:opacity .45s}.repair-device-pulse{opacity:0;transition:opacity .3s}.repair-device-pulse:before{content:"";background:linear-gradient(105deg, transparent 30%, var(--circuit-wash) 40%, var(--circuit-color) 50%, var(--circuit-wash) 60%, transparent 70%);opacity:0;position:absolute;inset:0;transform:translate(-100%)}@keyframes repair-circuit-pulse{0%{opacity:0;transform:translate(-100%)}20%{opacity:.7}70%{opacity:.7}to{opacity:0;transform:translate(100%)}}.repair-device-art{place-items:center;height:116px;display:grid;position:relative}.repair-device-cutout{aspect-ratio:1;clip-path:inset(2px);width:min(100%,116px);display:block;position:relative}.repair-device-art img{object-fit:contain}.repair-device-art[data-collection=true]{justify-self:center;width:min(100%,200px)}.repair-device-art[data-collection=true] .repair-device-cutout{width:60%;position:absolute;top:0;right:0}.repair-device-art[data-collection=true] .repair-device-cutout:nth-child(2){width:48%;top:5%;left:0;right:auto}.repair-device-art[data-collection=true] .repair-device-cutout:last-child{width:68%;top:auto;bottom:0;right:0}.repair-device-label{justify-content:space-between;align-items:center;gap:var(--space-2);min-height:var(--touch-target);font-size:var(--text-sm);font-weight:550;display:flex}.repair-device-label svg{width:18px;height:18px;color:var(--text-secondary);flex-shrink:0}.repair-devices button[aria-pressed=true]{border-color:var(--brand);box-shadow:inset 0 0 0 1px var(--brand);background:radial-gradient(ellipse at 50% 35%, var(--brand-wash), var(--surface) 85%)}.repair-devices button[aria-pressed=true] .repair-device-label svg{color:var(--brand)}.repair-devices button[aria-pressed=true] .repair-device-circuit:before{opacity:.28}.repair-devices button:disabled{cursor:default;opacity:.6}.repair-devices button:focus-visible{outline:2px solid var(--focus);outline-offset:4px}.repair-devices button:focus-visible:before{opacity:.55}.repair-devices button:focus-visible .repair-device-circuit:before,.category-card:focus-visible .repair-device-circuit:before{opacity:.32}.product-card:has(:focus-visible) .repair-device-circuit:before{opacity:.32}@media (hover:hover) and (pointer:fine){.repair-devices button:not(:disabled):not([aria-pressed=true]):hover:before{opacity:1}.repair-devices button:not(:disabled):not([aria-pressed=true]):hover .repair-device-circuit:before,.category-card:hover .repair-device-circuit:before,.product-card:hover .repair-device-circuit:before{opacity:.5}}@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){.repair-devices button:not(:disabled):not([aria-pressed=true]):hover .repair-device-pulse,.category-card:hover .repair-device-pulse,.product-card:hover .repair-device-pulse{opacity:1}.repair-devices button:not(:disabled):not([aria-pressed=true]):hover .repair-device-pulse:before,.category-card:hover .repair-device-pulse:before,.product-card:hover .repair-device-pulse:before{animation:1.6s ease-in-out .1s both repair-circuit-pulse}}@media (hover:none),(pointer:coarse){.repair-devices button:before,.category-card:before,.product-card:after,.repair-device-circuit:before,.repair-device-pulse{transition:none}}.repair-contact-link{font-size:var(--text-sm)}.repair-contact-link a{min-height:var(--touch-target);align-items:center;text-decoration:underline;display:inline-flex}.repair-bottom{gap:var(--space-4);display:grid}.repair-section-heading{margin-bottom:var(--space-5)}.repair-section-heading h2{margin-bottom:var(--space-2)}.repair-section-heading p{max-width:60ch}.repair-intro{padding-block:var(--space-2);max-width:68rem}.repair-page .repair-intro h2{letter-spacing:-.025em;margin-bottom:var(--space-3);text-wrap:balance;font-size:clamp(1.75rem,3.2vw,3rem);font-weight:650;line-height:1.2}.repair-intro h2 span{display:block}.repair-intro h2 span:last-child{color:var(--brand)}.repair-intro p{font-size:var(--text-lg)}.repair-steps{gap:var(--space-5);padding:var(--space-5);counter-reset:step;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);list-style:none;display:grid;position:relative;overflow:hidden}.repair-steps li{z-index:1;counter-increment:step;grid-template-columns:var(--space-8) minmax(0, 1fr);gap:var(--space-4);display:grid;position:relative}.repair-steps li:before{content:"0" counter(step);width:var(--space-8);height:var(--space-8);border-radius:var(--radius-sm);background:var(--brand-wash);color:var(--brand);font-size:var(--text-sm);place-items:center;font-weight:650;display:grid}.repair-steps li:not(:last-child):after{content:"";inset-inline-start:var(--space-4);top:calc(var(--space-8) + var(--space-1));bottom:calc(-1 * var(--space-4));background:var(--border-strong);width:1px;position:absolute}.repair-steps h3{font-size:var(--text-base);margin-bottom:var(--space-1)}.repair-steps p{font-size:var(--text-sm)}.repair-request{gap:var(--space-5);padding:var(--space-5);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);scroll-margin-top:var(--header-offset);display:grid}.repair-request-heading{gap:var(--space-2);display:grid}.repair-request-heading h2{margin:0}.repair-request-heading>p{font-size:var(--text-sm);max-width:40ch}.repair-form-panel{min-width:0}.repair-form,.repair-form fieldset,.repair-form-row{gap:var(--space-5);min-width:0;display:grid}.repair-form fieldset{border:0;margin:0;padding:0}.repair-request-block{align-content:start;gap:var(--space-4);min-width:0;padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--background);display:grid}.repair-request-block h3{font-size:var(--text-lg);margin:0;font-weight:650}.repair-device-block{border-color:color-mix(in srgb, var(--brand) 35%, var(--border))}.repair-block-heading{justify-content:space-between;align-items:baseline;gap:var(--space-2);flex-wrap:wrap;display:flex}.repair-block-heading h3 label{font:inherit}.repair-field-status{padding:var(--space-1) var(--space-2);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:var(--text-xs);line-height:1.4}.repair-page .repair-block-hint,.repair-contact-block .service-contact-fields>p{font-size:var(--text-sm);margin:0;line-height:1.5}.repair-contact-block .service-contact-fields{gap:var(--space-3);display:grid}.repair-picker-meta{justify-content:space-between;align-items:baseline;gap:var(--space-2);color:var(--text-secondary);flex-wrap:wrap;display:flex}.repair-picker-meta small,.repair-picker-meta>span{font-size:var(--text-xs)}.repair-picker-meta>span{white-space:nowrap}.repair-form-footer{gap:var(--space-4);align-items:center;display:grid}.repair-form-footer .repair-form-privacy{max-width:60ch;margin:0}.repair-field,.repair-form-row>div{gap:var(--space-2);align-content:start;min-width:0;display:grid}.repair-form label{font-size:var(--text-sm);font-weight:550}.repair-form label span,.repair-form small{color:var(--text-secondary);font-weight:400}.repair-form input,.repair-form select,.repair-form textarea{width:100%;min-width:0;min-height:var(--touch-target);padding:var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface-elevated);color:var(--text-primary);font:inherit}.repair-form input[aria-invalid=true]{border-color:var(--error)}.repair-form input[aria-invalid=true]+small{color:var(--error)}.repair-form textarea{resize:vertical}.repair-form-privacy,.repair-form small,.repair-retry-help{font-size:var(--text-sm)}.repair-form-privacy a{text-decoration:underline}.repair-form .button{min-height:var(--space-12)}.repair-page .repair-error{align-items:start;gap:var(--space-3);padding:var(--space-4);border:1px solid var(--error);border-radius:var(--radius-sm);color:var(--error);font-size:var(--text-sm);display:flex}.repair-error svg{flex-shrink:0}.repair-success{gap:var(--space-4);border-top:1px solid var(--border);padding-top:var(--space-5);align-items:start;display:flex}.repair-success .repair-icon{color:var(--success);background:var(--surface-elevated)}.repair-success h3{color:var(--success)}.repair-faq{border-top:1px solid var(--border)}.repair-faq details{border-bottom:1px solid var(--border)}.repair-faq summary{justify-content:space-between;align-items:center;gap:var(--space-4);cursor:pointer;padding-block:var(--space-4);min-height:var(--touch-target);font-weight:550;list-style:none;display:flex}.repair-faq summary::-webkit-details-marker{display:none}.repair-faq summary svg{width:18px;height:18px;color:var(--text-secondary);flex-shrink:0;transform:rotate(45deg)}.repair-faq details[open] summary svg{transform:none}.repair-faq summary:hover{color:var(--brand)}.repair-faq p{padding-bottom:var(--space-4);font-size:var(--text-sm);max-width:65ch}.repair-page :is(input,select,textarea,.button,summary,a[href^=tel\:]){scroll-margin-bottom:calc(var(--bottom-nav-height) + env(safe-area-inset-bottom) + var(--space-4))}.repair-admin-filters{padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface)}.repair-admin-filters>a{min-height:var(--touch-target);align-items:center;display:inline-flex}.repair-admin-list{gap:var(--space-4);display:grid}.repair-admin-list article{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-5);gap:var(--space-4);overflow-wrap:anywhere;display:grid}.admin-root .repair-admin-list h2{font-size:var(--text-lg);margin:0}.repair-admin-item-heading{gap:var(--space-2);flex-wrap:wrap;align-items:center;display:flex}.repair-admin-item-heading h2{flex:1 0 auto}.admin-root .repair-admin-list p{color:var(--text-primary);margin:0}.admin-root .repair-admin-list .repair-admin-secondary{color:var(--text-secondary)}.repair-admin-item-heading .repair-status{max-width:12rem}.repair-admin-item-heading time{width:100%}.repair-admin-number{min-height:var(--touch-target);color:var(--text-primary);align-items:center;font-weight:650;display:inline-flex}.repair-admin-number:hover{text-decoration:underline}.repair-admin-label,.repair-admin-secondary,.repair-admin-item-heading time{color:var(--text-secondary);font-size:var(--text-sm)}.repair-admin-item-device,.repair-admin-item-client{align-content:start;gap:var(--space-1);display:grid}.repair-admin-item-device{padding-top:var(--space-4);border-top:1px solid var(--border)}.repair-status{align-items:center;gap:var(--space-2);background:var(--surface-elevated);color:var(--text-secondary);font-weight:550;line-height:1.4;display:inline-flex}.repair-status:before{content:"";background:currentColor;border-radius:50%;flex-shrink:0;width:6px;height:6px}.repair-status[data-status=NEW]{color:var(--warning)}.repair-status[data-status=CONTACTED],.repair-status[data-status=IN_PROGRESS]{color:var(--focus)}.repair-status[data-status=DONE]{color:var(--success)}.repair-admin-copy{white-space:pre-wrap;overflow-wrap:anywhere}.repair-admin-detail{gap:var(--space-5);display:grid}.admin-root .repair-admin-detail>h1{margin:0}.repair-admin-detail>a{width:fit-content;min-height:var(--touch-target);align-items:center;display:inline-flex}.repair-admin-workspace{align-items:start;gap:var(--space-5);display:grid}.repair-admin-summary,.repair-admin-editor,.repair-admin-readonly{padding:var(--space-5);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);min-width:0}.repair-admin-detail dl{gap:var(--space-5);margin:0;display:grid}.repair-admin-detail dt{color:var(--text-secondary);font-size:var(--text-sm);margin-bottom:var(--space-1)}.repair-admin-detail dd{overflow-wrap:anywhere;margin:0}.repair-admin-description{padding-top:var(--space-5);border-top:1px solid var(--border)}.repair-admin-editor-heading{justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.admin-root .repair-admin-editor-heading h2{font-size:var(--text-lg);margin:0}.repair-admin-editor small{color:var(--text-secondary)}.repair-admin-save{gap:var(--space-3);padding-top:var(--space-4);border-top:1px solid var(--border);display:grid}.repair-admin-readonly{gap:var(--space-4);display:grid}.repair-admin-empty{padding:var(--space-8);border:1px dashed var(--border-strong);border-radius:var(--radius-md);color:var(--text-secondary);text-align:center}@media (min-width:640px){.repair-request-block{padding:var(--space-5)}.repair-form-row{grid-template-columns:repeat(2,minmax(0,1fr))}.repair-request,.repair-steps{padding:var(--space-6)}.repair-request-heading{align-items:end;gap:var(--space-5);padding-bottom:var(--space-5);border-bottom:1px solid var(--border);grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.repair-admin-list article{grid-template-columns:repeat(2,minmax(0,1fr))}.repair-admin-item-heading{grid-column:1/-1}.repair-admin-item-device,.repair-admin-item-client{padding-top:var(--space-4);border-top:1px solid var(--border)}}@media (min-width:768px){.repair-page{gap:var(--space-10)}.repair-hero{grid-template-columns:minmax(0,1fr) min(42%,540px)}.repair-hero-copy{padding:var(--space-8)}.repair-hero-art{min-height:320px;margin-left:calc(-1 * var(--space-12))}.repair-hero-art:after{background:linear-gradient(90deg, var(--surface), transparent 48%)}.repair-devices{grid-template-columns:repeat(4,minmax(0,1fr))}.repair-device-art{height:152px}.repair-device-cutout{width:min(100%,152px)}.repair-devices button{padding:var(--space-4)}.repair-steps{gap:var(--space-6);grid-template-columns:repeat(4,minmax(0,1fr))}.repair-steps li{gap:var(--space-3);grid-template-columns:minmax(0,1fr)}.repair-steps li:not(:last-child):after{inset-inline-start:var(--space-10);top:var(--space-4);width:calc(100% - var(--space-8));height:1px;bottom:auto}.repair-bottom{gap:var(--space-6)}}@media (min-width:1024px){.repair-form fieldset{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:start}.repair-device-block,.repair-photo-picker{grid-column:1}.repair-contact-block{grid-area:1/2/span 2}.repair-form-footer{grid-template-columns:minmax(0,1fr) auto}.repair-request{padding:var(--space-8);gap:var(--space-6)}.repair-request-heading{grid-template-columns:minmax(0,1fr) auto}.repair-form .button{justify-self:start;min-width:16rem}.repair-device-label{font-size:var(--text-base)}.repair-admin-list article{gap:var(--space-6);grid-template-columns:minmax(0,.9fr) minmax(0,1.2fr) minmax(0,1fr);align-items:start}.repair-admin-item-heading{grid-column:auto;grid-template-columns:minmax(0,1fr);justify-items:start;display:grid}.admin-root .repair-admin-filters{grid-template-columns:minmax(0,1fr) auto auto}.repair-admin-item-device,.repair-admin-item-client{padding:0 0 0 var(--space-5);border-top:0;border-left:1px solid var(--border)}.repair-admin-item-heading time{grid-column:auto}.repair-admin-workspace{gap:var(--space-6);grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.repair-admin-summary,.repair-admin-editor,.repair-admin-readonly{padding:var(--space-6)}.repair-admin-save .button{justify-self:start;min-width:12rem}}.repair-photo-picker{gap:var(--space-3);min-width:0;display:grid}.repair-form .repair-photo-add{justify-content:flex-start;justify-self:stretch;gap:var(--space-3);width:100%;min-width:0;min-height:var(--space-16);padding:var(--space-4);border-style:dashed;display:flex}.repair-photo-picker .repair-error:empty{display:none}.repair-photo-grid{grid-template-columns:repeat(auto-fill,minmax(116px,1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.repair-photo-grid li{min-width:0}.repair-photo-grid img{object-fit:contain;background:var(--surface-elevated);border-radius:8px;width:100%;height:116px;display:block}.repair-photo-grid button{border:1px solid var(--border);width:100%;min-height:44px;color:var(--text-primary);background:var(--surface-elevated);cursor:pointer;border-radius:8px}.repair-photo-grid button:focus-visible{outline:2px solid var(--focus);outline-offset:3px}.repair-admin-photos{gap:16px;display:grid}.repair-photo-dialog{border:1px solid var(--border);background:var(--surface);width:min(960px,100vw - 32px);max-height:calc(100dvh - 32px);color:var(--text-primary);border-radius:12px;margin:auto;padding:16px}.repair-photo-dialog::backdrop{background:#000c}.repair-photo-dialog img{object-fit:contain;max-width:100%;max-height:calc(100dvh - 140px);margin:12px auto 0;display:block}
.print-page{--text-xs:.8125rem;--text-sm:.9375rem;gap:var(--section-gap);padding-bottom:var(--space-8);display:grid}.print-page .breadcrumbs{margin-bottom:calc(-1 * var(--space-4))}.print-page h2{font-size:var(--text-section);letter-spacing:-.025em;margin:var(--space-2) 0 var(--space-5);line-height:1.2}.print-page h3{font-size:var(--text-lg);line-height:1.35}.print-page p{color:color-mix(in srgb, var(--text-primary) 15%, var(--text-secondary));line-height:1.65}.print-page small{color:color-mix(in srgb, var(--text-primary) 15%, var(--text-secondary));font-size:var(--text-sm);line-height:1.6}.print-hero{border:1px solid var(--border);border-radius:var(--radius-lg);background:radial-gradient(ellipse at 24% 4%, color-mix(in srgb, var(--surface-elevated) 35%, transparent), transparent 58%), radial-gradient(ellipse at 66% 54%, var(--printing-wash), transparent 62%), var(--surface);display:grid;overflow:hidden}.print-hero-copy{z-index:1;padding:var(--space-6);align-content:center;justify-items:start;gap:var(--space-4);display:grid;position:relative}.print-hero h1{letter-spacing:-.045em;font-size:clamp(2.5rem,4.5vw,4.25rem);line-height:1.08}.print-hero h1 span{color:var(--printing)}.print-hero p{max-width:42ch;font-size:var(--text-lg)}.print-hero .button{margin-top:var(--space-2)}.print-hero small{max-width:40ch}.print-hero-art{z-index:-2;pointer-events:none;grid-area:2/1;min-width:0;min-height:240px;margin:0;position:relative;-webkit-mask-image:linear-gradient(#0000,#000 24%);mask-image:linear-gradient(#0000,#000 24%)}.print-hero>.circuit-backdrop{-webkit-mask-image:linear-gradient(#000 20%,#000000d9 55%,#000000a8);mask-image:linear-gradient(#000 20%,#000000d9 55%,#000000a8)}.print-hero>.circuit-backdrop:before{opacity:.16}.print-hero-art img{object-fit:cover;object-position:right center}.print-section-heading{gap:var(--space-2);margin-bottom:var(--space-5);display:grid}.print-section-heading h2{margin-bottom:0}.print-section-heading>p{max-width:40ch;font-size:var(--text-sm)}.print-directions,.print-material-grid{gap:var(--space-4);display:grid}.print-direction{isolation:isolate;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);flex-direction:column;min-width:0;transition:border-color .25s,box-shadow .25s;display:flex}.print-direction-art{border-radius:var(--radius-lg) var(--radius-lg) 0 0;background:var(--surface);display:block;position:relative;overflow:hidden}.print-direction-art:after,.print-material-art:after{content:"";background:linear-gradient(transparent, color-mix(in srgb, var(--surface) 20%, transparent) 30%, color-mix(in srgb, var(--surface) 65%, transparent) 70%, var(--surface));pointer-events:none;height:32%;position:absolute;inset:auto 0 0}.print-direction-art img{aspect-ratio:3/2;object-fit:contain;width:100%;height:auto;transition:transform .35s;display:block}.print-direction-body{isolation:isolate;gap:var(--space-3);padding:var(--space-4) var(--space-5) var(--space-5);background:linear-gradient(transparent, var(--printing-wash));flex-direction:column;flex:1;display:flex;position:relative}.print-direction-body .repair-device-circuit{inset:1px}.print-direction-body .repair-device-circuit:before{opacity:.11}.print-card-index{color:var(--focus);font-size:var(--text-xs);letter-spacing:.05em}.print-direction h3{color:var(--text-primary)}.print-direction p{font-size:var(--text-sm)}.print-card-action{justify-content:space-between;align-items:center;gap:var(--space-4);min-height:var(--touch-target);padding-top:var(--space-2);color:var(--text-primary);font-size:var(--text-sm);margin-top:auto;font-weight:550;display:flex}.print-card-action svg{color:var(--printing);width:20px}.print-material-note{margin-top:var(--space-3);font-size:var(--text-xs)}.print-direction:focus-visible{border-color:var(--focus)}.print-direction:focus-visible .repair-device-circuit:before{opacity:.32}@media (hover:hover) and (pointer:fine){.print-direction:hover{border-color:var(--printing);box-shadow:var(--glow-print)}.print-direction:hover .repair-device-circuit:before{opacity:.5}.print-dropzone:not(:disabled):hover{border-color:var(--focus);background:var(--printing-wash)}}@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){.print-hero .circuit-glow{transition-duration:.48s}.print-hero .circuit-hotspot,.print-panel .circuit-hotspot{opacity:.6}.print-direction:hover .print-direction-art img{transform:scale(1.015)}.print-direction:hover .repair-device-pulse{opacity:1}.print-direction:hover .repair-device-pulse:before{animation:1.6s ease-in-out .1s both repair-circuit-pulse}}.print-material-grid article{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);min-width:0;overflow:hidden}.print-material-art{position:relative}.print-material-grid [data-material=PLA] .print-material-art:after{height:26%}.print-material-grid [data-material=TPU] .print-material-art:after{height:28%}.print-material-art img{aspect-ratio:3/2;object-fit:contain;width:100%;height:auto;display:block}.print-material-name{z-index:1;left:var(--space-5);padding:var(--space-1) var(--space-3);background:var(--background);border:1px solid color-mix(in srgb, var(--printing) 35%, var(--border));box-shadow:inset 3px 0 var(--printing);border-radius:var(--radius-sm);color:var(--text-primary);letter-spacing:-.04em;font-size:1.75rem;font-weight:750;position:absolute;bottom:0;transform:translateY(50%)}.print-material-copy{gap:var(--space-3);padding:var(--space-10) var(--space-5) var(--space-5);display:grid}.print-material-copy p{font-size:var(--text-sm)}.print-material-uses{padding-top:var(--space-3);border-top:1px solid color-mix(in srgb, var(--printing) 20%, var(--border));color:var(--text-secondary);font-size:var(--text-xs)}.print-process{border:1px solid color-mix(in srgb, var(--printing) 22%, var(--border));border-radius:var(--radius-lg);padding:var(--space-6)}.print-process ol{gap:var(--space-6);margin:var(--space-6) 0;counter-reset:print-step;padding:0;list-style:none;display:grid}.print-process li{counter-increment:print-step;grid-template-columns:var(--space-12) minmax(0, 1fr);column-gap:var(--space-4);align-content:start;display:grid;position:relative}.print-process li:before{content:"0" counter(print-step);z-index:1;width:var(--space-12);height:var(--space-12);border:1px solid color-mix(in srgb, var(--printing) 55%, var(--border-strong));border-radius:var(--radius-md);background:linear-gradient(var(--printing-wash), transparent), var(--surface);color:var(--focus);font-size:var(--text-xl);grid-row:span 2;align-self:start;place-items:center;font-weight:750;display:grid;position:relative}.print-process li:not(:last-child):after{content:"";top:var(--space-12);left:var(--space-6);height:calc(100% - var(--space-6));background:linear-gradient(var(--printing), color-mix(in srgb, var(--printing) 35%, var(--border-strong)));width:1px;position:absolute}.print-process h3{margin-bottom:var(--space-2)}.print-process p{color:color-mix(in srgb, var(--text-primary) 15%, var(--text-secondary));font-size:var(--text-sm)}.print-equipment{border-top:1px solid var(--border);padding-top:var(--space-5)}.print-bottom{gap:var(--space-8);align-items:start;display:grid}.print-panel{border:1px solid var(--border);border-top-color:color-mix(in srgb, var(--printing) 40%, var(--border));border-radius:var(--radius-lg);background:linear-gradient(145deg, var(--printing-wash), transparent 35%), var(--surface)}.print-panel>.circuit-backdrop:before{opacity:.22}.print-panel>.eyebrow{align-items:center;gap:var(--space-2);color:var(--focus);display:flex}.print-panel>.eyebrow:before{content:"";width:var(--space-6);background:var(--printing);flex-shrink:0;height:2px}.print-request{scroll-margin-top:var(--header-offset);min-width:0;padding:var(--space-5)}.print-form{gap:var(--space-5);display:grid}.print-stepper{gap:var(--space-2);font-size:var(--text-sm);color:var(--text-secondary);grid-template-columns:repeat(3,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.print-stepper li{place-items:center start;gap:var(--space-2);padding-bottom:var(--space-4);border-bottom:2px solid var(--border);display:grid}.print-stepper [aria-current]{color:var(--text-primary);border-color:var(--printing)}.print-stepper span{border:1px solid var(--border-strong);border-radius:var(--radius-sm);place-items:center;width:28px;height:28px;font-weight:650;display:grid}.print-stepper [aria-current] span{background:var(--printing-action);border-color:var(--printing-action)}.print-stepper [data-complete] span{color:var(--focus);border-color:var(--printing)}.print-stepper svg{width:16px;height:16px}.print-step-heading{gap:var(--space-2);display:grid}.print-step-heading p{font-size:var(--text-sm)}.print-step-heading h3{font-size:var(--text-xl);font-weight:650}.print-form .print-service-choice{font-weight:600}.print-form fieldset[data-step="0"]{gap:var(--space-5)}.print-request-block{gap:var(--space-3);min-width:0;padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);display:grid}.print-block-heading h4{font-size:var(--text-lg);margin:0;font-weight:650;line-height:1.35}.print-block-heading h4 label{font:inherit;display:block}.print-page .print-block-hint{color:var(--text-secondary);font-size:var(--text-sm);margin:0;line-height:1.5}.print-block-heading .print-field-status{padding:var(--space-1) var(--space-2);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:var(--text-xs);line-height:1.4}.print-block-heading .print-field-status[data-required=true]{color:var(--focus);background:var(--printing-wash);border-color:#0000}.print-request-block.print-model-picker{border-color:color-mix(in srgb, var(--printing) 35%, var(--border))}.print-picker-meta{justify-content:space-between;align-items:baseline;gap:var(--space-2) var(--space-3);flex-wrap:wrap;display:flex}.print-picker-meta small,.print-file-count{font-size:var(--text-xs);color:var(--text-secondary)}.print-file-count{white-space:nowrap}.print-form fieldset{gap:var(--space-4);border:0;min-width:0;margin:0;padding:0;display:grid}.print-form fieldset[hidden],.print-form [hidden]{display:none}.print-form label{gap:var(--space-2);font-size:var(--text-sm);color:var(--text-primary);display:grid}.print-form input,.print-form select,.print-form textarea{width:100%;min-width:0;min-height:var(--space-12);border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--background);color:var(--text-primary);padding:var(--space-3);font:inherit;font-size:var(--text-base)}.print-form textarea{resize:vertical}.print-form input::placeholder,.print-form textarea::placeholder{color:var(--text-secondary)}.print-form [aria-invalid=true]{border-color:var(--error)}.print-form .field-error{color:var(--error);font-size:var(--text-sm)}.print-form .field-error:empty{display:none}.print-model-picker,.print-photo-picker{gap:var(--space-3);min-width:0;display:grid}.print-dropzone{justify-items:center;gap:var(--space-2);width:100%;padding:var(--space-6) var(--space-4);border:1px dashed var(--border-strong);border-radius:var(--radius-md);background:var(--background);color:var(--text-primary);font:inherit;text-align:center;transition:background var(--transition), border-color var(--transition);display:grid}.print-dropzone>span:not(.print-upload-icon){font-size:var(--text-sm);color:var(--text-secondary)}.print-dropzone strong{font-size:var(--text-base);font-weight:550}.print-supporting-dropzone{place-items:center start;gap:var(--space-3);padding:var(--space-4);text-align:left;grid-template-columns:auto minmax(0,1fr)}.print-upload-copy{gap:var(--space-1);display:grid}.print-upload-copy strong{color:var(--text-primary)}.print-upload-icon{width:var(--space-12);height:var(--space-12);margin-bottom:var(--space-2);background:var(--printing-wash);border-radius:var(--radius-md);color:var(--focus);place-items:center;display:grid}.print-dropzone[data-dragging=true]{border-style:solid;border-color:var(--focus);background:var(--printing-wash);outline:2px solid var(--focus);outline-offset:3px}.print-dropzone .print-drop-desktop{display:none}.print-file{align-items:center;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--background);display:flex}.print-file-extension{color:var(--focus);font-weight:650;font-size:var(--text-xs);flex-shrink:0}.print-file-info{gap:var(--space-1);overflow-wrap:anywhere;flex:1;min-width:0;display:grid}.print-file-info strong{font-size:var(--text-sm);font-weight:550}.print-file-info small{font-size:var(--text-xs)}.print-file button{width:var(--touch-target);height:var(--touch-target);border:1px solid var(--border-strong);border-radius:var(--radius-sm);flex-shrink:0;place-items:center;display:grid}.print-picker-heading{justify-content:space-between;gap:var(--space-2);flex-wrap:wrap;align-items:baseline;display:flex}.print-picker-heading>span{color:var(--text-secondary);font-size:var(--text-sm)}.print-previews{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.print-previews li{align-content:start;gap:var(--space-2);min-width:0;padding:var(--space-2);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--background);display:grid}.print-previews img{aspect-ratio:4/3;object-fit:contain;border-radius:var(--radius-sm);background:var(--surface-elevated);width:100%;height:auto}.print-photo-name{overflow-wrap:anywhere;font-size:var(--text-xs)}.print-previews small{font-size:var(--text-xs)}.print-previews button{justify-content:center;align-items:center;gap:var(--space-1);min-height:var(--touch-target);border:1px solid var(--border-strong);border-radius:var(--radius-sm);font-size:var(--text-sm);display:flex}.print-previews button svg{width:16px;height:16px}.print-photo-add{width:100%}.print-material-actions{gap:var(--space-2);display:grid}.print-material-previews .print-file-extension{justify-content:center;align-items:center;gap:var(--space-2);min-height:80px;display:flex}.service-contact-fields>p{margin-bottom:var(--space-3)}.print-form :disabled{cursor:not-allowed;opacity:.6}.print-pair{gap:var(--space-4);display:grid}.print-material-choice{padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--background)}.print-material-choice>p:not(:empty){gap:var(--space-3);margin-top:var(--space-3);font-size:var(--text-sm);display:flex}.print-material-choice svg,.print-parameter-note svg{color:var(--focus);width:20px;height:20px}.print-parameter-note{gap:var(--space-3);font-size:var(--text-sm);display:flex}.print-review{padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--background)}.print-review h4{margin:0 0 var(--space-3);font-size:var(--text-base);font-weight:550}.print-review dl{gap:var(--space-2);font-size:var(--text-sm);margin:0;display:grid}.print-review dl>div{gap:var(--space-3);grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);display:grid}.print-review dt{color:var(--text-secondary)}.print-review dd{overflow-wrap:anywhere;margin:0}.print-privacy{font-size:var(--text-xs)}.print-privacy a{text-underline-offset:3px;text-decoration:underline}.print-form-actions{gap:var(--space-3);flex-wrap:wrap;display:flex}.print-form-actions .button{flex:1}.print-form-actions .button-secondary{flex-grow:2}.print-form .print-draft-note{font-size:var(--text-xs)}.print-receipt{gap:var(--space-6);align-items:center;min-width:0;display:grid}.print-receipt-copy{gap:var(--space-4);justify-items:start;min-width:0;display:grid}.print-receipt .print-receipt-status{align-items:center;gap:var(--space-3);color:var(--success);font-size:var(--text-sm);font-weight:550;display:flex}.print-receipt h2{max-width:20ch;scroll-margin-top:var(--header-offset);margin:0;font-size:clamp(1.75rem,3vw,2.5rem)}.print-receipt h2:focus{outline:none}.print-receipt-copy>p:not(.print-receipt-status){max-width:54ch}.print-receipt-icon{width:var(--space-10);height:var(--space-10);border:1px solid color-mix(in srgb, var(--success) 55%, var(--border));border-radius:var(--radius-md);color:var(--success);flex-shrink:0;place-items:center;display:grid}.print-receipt-reference{gap:var(--space-3);min-width:0;padding:var(--space-5);border:1px solid color-mix(in srgb, var(--printing) 40%, var(--border));border-radius:var(--radius-md);background:var(--background);display:grid}.print-receipt-label{color:var(--text-secondary);font-size:var(--text-sm)}.print-receipt-number{font-variant-numeric:tabular-nums;overflow-wrap:anywhere;-webkit-user-select:all;user-select:all;font-size:clamp(1.5rem,2vw,2rem);line-height:1.3}.print-receipt .print-copy-feedback{min-height:3.3em;font-size:var(--text-xs)}.print-copy-feedback[data-copied=true]{color:var(--success)}.print-request:has(.print-receipt)>:is(h2,.eyebrow){display:none}.print-request:has(.print-receipt){border-color:color-mix(in srgb, var(--printing) 55%, var(--border));box-shadow:var(--glow-print)}.print-bottom:has(.print-receipt){grid-template-columns:minmax(0,1fr)}.print-bottom:has(.print-receipt) .print-aside{gap:var(--space-6);align-items:start;min-width:0;display:grid}.print-bottom:has(.print-receipt) .print-links{margin-top:0}.print-bottom:has(.print-receipt) .print-aside .print-panel{background:var(--surface)}.print-bottom:has(.print-receipt) .print-aside .circuit-backdrop:before{opacity:.07}.print-bottom:has(.print-receipt) .print-aside .circuit-glow{display:none}.print-bottom:has(.print-receipt) .print-faq h2{font-size:var(--text-lg)}.print-faq{padding:var(--space-5)}.print-faq .repair-faq summary:hover{color:var(--focus)}.print-faq .repair-faq summary{padding:var(--space-5) var(--space-4);transition:color var(--transition)}.print-faq .repair-faq details{transition:background var(--transition), border-color var(--transition);border-inline:1px solid #0000}.print-faq details[open]{background:var(--printing-wash);border-inline-color:color-mix(in srgb, var(--printing) 25%, transparent)}.print-faq details[open] summary svg{color:var(--focus)}.print-faq .repair-faq p{padding:0 var(--space-4) var(--space-5);overflow-wrap:anywhere;font-size:var(--text-sm)}.print-links{gap:var(--space-2);padding:var(--space-5);margin-top:var(--space-6);display:grid}.print-links>svg{color:var(--focus);margin-bottom:var(--space-2);width:var(--space-10);height:var(--space-10);padding:var(--space-2);border:1px solid color-mix(in srgb, var(--printing) 25%, var(--border));border-radius:var(--radius-sm);background:var(--printing-wash)}.print-links p{font-size:var(--text-sm);margin-bottom:var(--space-3)}.print-links a{justify-content:space-between;align-items:center;gap:var(--space-3);min-height:var(--touch-target);font-size:var(--text-sm);display:flex}.print-links a svg{width:18px;color:var(--text-secondary)}.print-links a:hover svg,.print-links a:focus-visible svg{color:var(--focus)}.print-page :is(input,select,textarea,button,summary){scroll-margin-bottom:calc(var(--bottom-nav-height) + env(safe-area-inset-bottom) + var(--space-4))}.print-admin-files{gap:var(--space-4);flex-wrap:wrap;padding:0;list-style:none;display:flex}.print-admin-files li{padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-sm);max-width:100%}.print-admin-files img{object-fit:contain;max-width:100%;margin-bottom:var(--space-2);display:block}.print-admin-files a{min-height:var(--touch-target);padding:10px 0;display:block}@media (hover:hover) and (pointer:fine){.print-dropzone .print-drop-desktop{display:block}.print-dropzone .print-drop-mobile{display:none}}@media (min-width:640px){.print-request-block{padding:var(--space-5)}.print-stepper li{display:flex}.print-pair{grid-template-columns:minmax(0,1.4fr) minmax(0,.6fr)}.print-previews{grid-template-columns:repeat(3,minmax(0,1fr))}.print-hero-copy{padding:var(--space-8)}}@media (min-width:768px){.print-receipt{gap:var(--space-8);grid-template-columns:minmax(0,1.4fr) minmax(0,1fr)}.print-bottom:has(.print-receipt) .print-aside{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr)}.print-hero{grid-template-columns:1.05fr 1fr}.print-hero-art{grid-area:auto;width:62%;height:100%;position:absolute;inset:0 0 0 auto;-webkit-mask-image:linear-gradient(90deg,#0000,#000 44%);mask-image:linear-gradient(90deg,#0000,#000 44%)}.print-hero>.circuit-backdrop:before{-webkit-mask-image:linear-gradient(90deg,#000 40%,#000000ad 76%);mask-image:linear-gradient(90deg,#000 40%,#000000ad 76%)}.print-hero>.circuit-backdrop{-webkit-mask-image:linear-gradient(90deg,#000 12%,#000000e0 42%,#000000ad 72%,#000000a8);mask-image:linear-gradient(90deg,#000 12%,#000000e0 42%,#000000ad 72%,#000000a8)}.print-directions,.print-material-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.print-process ol{gap:var(--space-5);grid-template-columns:repeat(4,minmax(0,1fr))}.print-process li{display:block}.print-process li:before{margin-bottom:var(--space-5)}.print-process li:not(:last-child):after{top:var(--space-6);left:var(--space-12);width:calc(100% - var(--space-12) + var(--space-5));height:1px}.print-process h3{font-size:var(--text-base)}}@media (min-width:1024px){.print-hero{grid-template-columns:1fr 1.1fr}.print-hero-copy{padding:var(--space-12)}.print-hero .button{min-height:52px}.print-section-heading{gap:var(--space-8);grid-template-columns:1fr auto;align-items:end}.print-direction-body{padding:var(--space-4) var(--space-6) var(--space-6)}.print-material-copy{padding:var(--space-10) var(--space-6) var(--space-6)}.print-bottom{gap:var(--space-12);grid-template-columns:minmax(0,1.25fr) minmax(0,1fr)}.print-request,.print-process{padding:var(--space-8)}.print-process h3{font-size:var(--text-lg)}}@media (prefers-reduced-motion:reduce){.print-direction,.print-direction-art img,.print-dropzone,.print-faq .repair-faq details,.print-faq .repair-faq summary{transition:none}.print-direction .repair-device-pulse{display:none}}
.service-visit{gap:var(--space-6);padding:var(--space-5);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);display:grid}.service-visit>div{min-width:0}.service-visit p+p{margin-top:var(--space-3)}.service-visit address{font-style:normal}.service-visit a{color:var(--text-primary);text-underline-offset:4px;text-decoration:underline}.service-visit-phones{gap:var(--space-3) var(--space-5);margin-top:var(--space-3);flex-wrap:wrap;display:flex}.service-visit-phones a{align-items:center;min-height:44px;display:inline-flex}@media (min-width:1024px){.service-visit{gap:var(--space-8);padding:var(--space-6);grid-template-columns:minmax(0,1.4fr) minmax(0,1fr)}}
:root,[data-circuit-theme=classic]{--circuit-brand:var(--brand);--circuit-brand-wash:var(--brand-wash);--circuit-printing:var(--printing);--circuit-printing-wash:var(--printing-wash)}[data-circuit-theme=cross]{--circuit-brand:var(--printing);--circuit-brand-wash:var(--printing-wash);--circuit-printing:var(--brand);--circuit-printing-wash:var(--brand-wash)}.circuit-backdrop,.repair-device-circuit{--circuit-color:var(--circuit-brand);--circuit-wash:var(--circuit-brand-wash)}.service-printing .circuit-backdrop,[data-circuit-domain=printing] .circuit-backdrop,[data-circuit-domain=printing] .repair-device-circuit{--circuit-color:var(--circuit-printing);--circuit-wash:var(--circuit-printing-wash)}.circuit-surface{isolation:isolate;position:relative}.circuit-backdrop{z-index:-1;border-radius:inherit;pointer-events:none;position:absolute;inset:1px;overflow:hidden}.circuit-backdrop[data-texture=true]:before{content:"";background-image:url(/images/repair/board-traces.svg);background-size:480px 240px;background-position:var(--circuit-x,0px) var(--circuit-y,0px);opacity:.1;pointer-events:none;position:absolute;inset:0}.repair-process>.circuit-backdrop{z-index:0;border-radius:calc(var(--radius-lg) - 1px)}.repair-process>.circuit-backdrop:before{opacity:.22}.circuit-glow{border-radius:inherit;-webkit-mask-image:url(/images/repair/board-traces.svg);mask-image:url(/images/repair/board-traces.svg);-webkit-mask-size:480px 240px;mask-size:480px 240px;-webkit-mask-position:var(--circuit-x,0px) var(--circuit-y,0px);mask-position:var(--circuit-x,0px) var(--circuit-y,0px);opacity:0;pointer-events:none;transition:opacity .36s ease-out;display:none;position:absolute;inset:0;overflow:hidden}.circuit-spot{background:radial-gradient(circle, var(--circuit-color), var(--circuit-wash) 45%, transparent 72%);opacity:0;width:224px;height:224px;position:absolute;top:-112px;left:-112px}.circuit-hotspot{opacity:.55}:is(.product-main-photo,.product-purchase,.commerce-panel).circuit-surface>.circuit-backdrop:after{content:"";background:var(--circuit-color);-webkit-mask-image:url(/images/repair/board-traces.svg);mask-image:url(/images/repair/board-traces.svg);-webkit-mask-size:480px 240px;mask-size:480px 240px;-webkit-mask-position:var(--circuit-x,0px) var(--circuit-y,0px);mask-position:var(--circuit-x,0px) var(--circuit-y,0px);opacity:0;pointer-events:none;transition:opacity .3s;position:absolute;inset:0}:is(.product-main-photo,.product-purchase,.commerce-panel).circuit-surface:is(:focus-visible,:has(:focus-visible))>.circuit-backdrop:after{opacity:.2}.product-main-photo>.circuit-backdrop:before{opacity:.055}.product-main-photo .circuit-hotspot{opacity:.4}:is(.commerce-cart-item,.product-purchase,.commerce-panel).circuit-surface{outline-offset:-1px;outline:1px solid #0000;transition:outline-color .3s}:is(.commerce-cart-item,.product-purchase,.commerce-panel).circuit-surface:has(:focus-visible){outline-color:color-mix(in srgb, var(--circuit-brand) 50%, transparent)}@media (hover:hover) and (pointer:fine){:is(.commerce-cart-item,.product-purchase,.commerce-panel).circuit-surface:hover{outline-color:color-mix(in srgb, var(--circuit-brand) 50%, transparent)}}@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){.circuit-glow{display:block}.circuit-glow[data-active=true]{opacity:1}}
