:root{--ink:#243447;--paper:#e9ecef;--white:#ffffff;--mint:#00897b;--muted:#64748b;--line:#dce2e8}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:system-ui,-apple-system,'Segoe UI',sans-serif}button,input{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.55;cursor:wait}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid var(--mint);outline-offset:3px}#app{max-width:760px;min-height:100dvh;margin:auto;padding:24px 20px calc(92px + env(safe-area-inset-bottom))}.brand{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:30px}.brand b{letter-spacing:.16em;font-size:18px}.brand small{font-size:12px;color:var(--muted)}h1{font-size:clamp(25px,6vw,34px);line-height:1.15;margin:12px 0}h2{font-size:21px}p{line-height:1.6}.subtitle{color:var(--muted);font-size:14px;margin:10px 0 24px}.eyebrow{color:var(--mint);font-size:12px;letter-spacing:.09em}.search{width:100%;border:1px solid var(--line);border-radius:14px;padding:16px;background:var(--white);font-size:16px;margin:8px 0 20px}.menu{display:grid;gap:13px}.menu button,.primary{background:var(--ink);color:var(--white);border:0;border-radius:15px;padding:19px 18px;min-height:60px;text-align:left;display:flex;align-items:center;gap:14px;width:100%}.menu button span:last-child{margin-left:auto}.menu .accent{background:var(--mint);color:var(--ink)}.symbol{color:var(--mint);width:25px;text-align:center;font-size:21px}.accent .symbol{color:var(--ink)}.status{display:flex;align-items:center;gap:8px;margin:22px 0;color:var(--mint);font-size:13px}.nav{position:fixed;bottom:0;left:50%;transform:translateX(-50%);width:min(100%,760px);display:flex;justify-content:space-around;background:var(--paper);border-top:1px solid var(--line);padding:10px 8px calc(10px + env(safe-area-inset-bottom));z-index:5}.nav button{min-height:48px;min-width:80px;background:transparent;border:0;color:var(--muted);font-size:13px}.nav button.active{color:var(--mint);font-weight:600}.list{background:var(--white);border:1px solid var(--line);border-radius:15px;overflow:hidden}.row{display:flex;gap:14px;align-items:center;justify-content:space-between;width:100%;min-height:58px;text-align:left;background:transparent;color:var(--ink);border:0;border-bottom:1px solid var(--line);padding:16px;font-size:16px}.row:last-child{border-bottom:0}.row small{display:block;color:var(--muted);font-size:12px;margin-top:5px}.back{background:transparent;color:var(--mint);border:0;min-height:44px;padding:8px 0;text-align:left}.toolbar{display:flex;justify-content:space-between;align-items:center}.star{font-size:25px;border:0;background:transparent;min-width:48px;min-height:48px;color:var(--mint)}details{background:var(--white);border:1px solid var(--line);border-radius:12px;margin-bottom:12px;overflow:hidden}summary{padding:18px;min-height:56px;cursor:pointer}details[open] summary{color:var(--mint);border-bottom:1px solid var(--line)}details .row{padding-left:28px}.article{line-height:1.7;font-size:16px}.article h2{margin-top:26px}.article p{white-space:pre-wrap;overflow-wrap:anywhere}.article img{display:block;max-width:100%;height:auto;margin:16px auto;border-radius:10px}.image-link{display:block}.table-wrap{overflow-x:auto;margin:18px 0;background:var(--white);border-radius:10px}table{border-collapse:collapse;width:100%;font-size:14px}td{border:1px solid var(--line);padding:12px;min-width:85px;vertical-align:top;white-space:pre-wrap}td:first-child{font-weight:600}.card{background:var(--white);padding:20px;border:1px solid var(--line);border-radius:16px;margin:18px 0}.card label{display:block;margin:12px 0;font-size:14px}.card input{margin:8px 0 16px;width:100%;padding:16px;border-radius:10px;border:1px solid var(--line);font-size:16px}.card .primary{justify-content:center}.error{color:#8b302b;background:#fbe9e5;padding:14px;border-radius:12px;line-height:1.5;overflow-wrap:anywhere}.note{color:var(--muted);font-size:13px;line-height:1.6}.loading{padding:30px 0}progress{width:100%;accent-color:var(--mint);height:12px}.empty{padding:22px;color:var(--muted)}.badge{background:var(--mint);padding:5px 9px;border-radius:7px;font-size:12px}.hidden,[hidden]{display:none!important}.zoom{position:fixed;inset:0;background:#243447ed;z-index:10;overflow:auto;padding:70px 12px 20px}.zoom img{max-width:none;min-width:100%;height:auto}.zoom button{position:fixed;right:20px;top:16px;background:var(--mint);border:0;border-radius:10px;padding:14px;z-index:11}.article .missing{font-size:13px;color:var(--muted);border:1px dashed var(--line);padding:12px}.deactivate{border:0;background:transparent;color:var(--mint);min-height:44px;text-decoration:underline}@media(min-width:620px){#app{padding-top:35px}.menu{max-width:550px}.article{font-size:17px}}

.brand{align-items:center;margin-bottom:30px}.brand b{display:block;letter-spacing:-.03em;font-size:22px;font-weight:650}.brand div small{display:block;margin-top:5px;font-style:italic}.brand strong{font-size:12px;font-weight:600;color:var(--mint)}
.menu{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.menu button{min-width:0;min-height:145px;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;background:var(--white);color:var(--ink);border:1px solid var(--line);padding:18px 14px;border-radius:16px;gap:14px}.menu button span:last-child{margin-left:0}.menu button .symbol{font-size:24px;text-align:left;height:28px;width:28px}.tile-copy{display:block;width:100%;overflow-wrap:anywhere}.tile-copy strong{font-size:15px;font-weight:600;display:block}.tile-copy small{display:block;font-size:12px;color:var(--muted);margin-top:7px;line-height:1.4}.menu .accent{grid-column:1/-1;min-height:62px;flex-direction:row;align-items:center;background:var(--mint);color:white;border-color:var(--mint)}.menu .accent .symbol{color:white}.menu .accent .tile-copy{flex:1}.menu .accent span:last-child{margin-left:auto}.primary{background:var(--ink)}.badge{background:#dcefea;color:var(--mint)}.zoom button{background:white;color:var(--ink)}.brand strong{white-space:nowrap}.deactivate{font-size:14px}.menu button:hover,.row:hover{background:#f4f8f9}.menu .accent:hover{background:#00786c}.article .image-link{max-width:100%}
@media(min-width:620px){.menu{max-width:none;gap:16px}.menu button{padding:24px;min-height:160px}.menu .accent{min-height:66px}.tile-copy strong{font-size:17px}}

.brand-logo{width:48px;height:52px;object-fit:contain}.update-notice{display:flex;align-items:center;flex-wrap:wrap;gap:10px;background:white;border:1px solid var(--line);border-radius:12px;padding:12px;margin-bottom:18px;font-size:13px}.update-notice span{flex:1}.update-notice button{border:0;background:var(--ink);color:white;border-radius:8px;padding:10px}.update-notice [data-later]{background:transparent;color:var(--muted)}

#app{padding-top:calc(24px + env(safe-area-inset-top,0px));padding-left:max(20px,env(safe-area-inset-left,0px));padding-right:max(20px,env(safe-area-inset-right,0px))}
.zoom{padding-top:calc(70px + env(safe-area-inset-top,0px))}.zoom button{top:calc(16px + env(safe-area-inset-top,0px))}
.dimensions-table table{table-layout:fixed}.dimensions-table th,.dimensions-table td{min-width:0;padding:12px 10px;overflow-wrap:anywhere;text-align:left}.dimensions-table th{background:#f4f8f9;border:1px solid var(--line);font-weight:600}
@media(min-width:620px){#app{padding-top:calc(35px + env(safe-area-inset-top,0px))}}
.install-tabs{display:flex;border-bottom:1px solid var(--line);gap:8px;margin-bottom:20px}.install-tabs button{flex:1;min-height:48px;border:0;border-bottom:3px solid transparent;background:transparent;color:var(--muted);font-weight:600}.install-tabs [aria-selected="true"]{border-bottom-color:var(--mint);color:var(--mint)}.install-guide h2{font-size:20px}.install-guide ol{padding-left:22px;line-height:1.65}.install-guide li{padding-left:4px;margin:14px 0;overflow-wrap:anywhere}.open-pc{justify-content:center}
.tools-menu{margin-top:20px}.band-inputs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.band-inputs label{min-width:0}#resistor-bands label,#resistor-smd label{display:block;margin-bottom:14px}#resistor-bands select{width:100%;min-height:48px;padding:10px;border:1px solid var(--line);border-radius:10px;background:white;color:var(--ink)}.resistor-preview{display:flex;align-items:center;justify-content:center;margin:30px 0}.resistor-wire{height:4px;width:15%;background:#9ba5ad}.resistor-body{display:flex;gap:10px;justify-content:center;padding:0 20px;width:70%;max-width:350px;height:76px;border-radius:22px;background:#dac7a3;box-shadow:inset 0 0 0 1px #b7a380}.resistor-body span{display:block;width:18px;box-shadow:inset 0 0 0 1px #0002}.resistor-body span:nth-last-child(1){margin-left:12px}.band-black{background:#171c23}.band-brown{background:#805332}.band-red{background:#d94141}.band-orange{background:#f29534}.band-yellow{background:#e4c33d}.band-green{background:#34875d}.band-blue{background:#3f70b8}.band-violet{background:#8756a1}.band-grey{background:#8c949b}.band-white{background:#fafafa}.band-gold{background:#bc9548}.band-silver{background:#bfc4cc}output{display:block;font-weight:600;line-height:1.65;margin-top:18px}.component-actions{display:grid;gap:10px;margin:22px 0}.component-actions a{text-align:center;text-decoration:none}.component-parameters{display:grid;grid-template-columns:minmax(90px,1fr) minmax(0,1.5fr);gap:0;margin:0}.component-parameters dt,.component-parameters dd{margin:0;border-bottom:1px solid var(--line);padding:12px 4px;overflow-wrap:anywhere}.component-parameters dd{font-weight:600}#component-summary{scroll-margin-top:calc(20px + env(safe-area-inset-top,0px))}#component-summary h3{font-size:17px;margin-top:26px}.update-notice small{display:block;font-weight:400;margin-top:5px}.component-parameters+button{margin-top:20px}@media(min-width:620px){.component-actions{grid-template-columns:1fr 1fr}.band-inputs{grid-template-columns:repeat(3,minmax(0,1fr))}}

.component-history{margin:18px 0}.component-history summary{cursor:pointer;font-weight:600;padding:12px 0}.component-report-draft{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;line-height:1.6}

#photo-preview{display:block;width:100%;height:auto;touch-action:none;margin:16px 0}#photo-preview[hidden]{display:none}#photo-confirm input,#ohm-form input,#ohm-form select,#cap-unit-form input,#cap-unit-form select,#cap-code-form input,#resistor-combine textarea,#resistor-combine select{width:100%;min-height:44px;margin:8px 0;padding:10px;border:1px solid var(--line);border-radius:10px;background:white;color:var(--ink)}

#component-summary .table-wrap{overflow-x:auto;margin:12px 0}#component-summary table{width:100%;table-layout:fixed;border-collapse:collapse;font-size:13px}#component-summary th,#component-summary td{padding:10px 6px;border-bottom:1px solid var(--line);text-align:left;overflow-wrap:anywhere;vertical-align:top}#component-summary td small{display:block;color:var(--muted);margin-top:6px}
