@import "https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;450;500;550;600;650;700;750&display=swap";
:root{--ink:#22354b;--muted:#7a899c;--line:#e3e9ef;--blue:#2864c8;--pale:#edf3fc;--surface:#f5f7fa}*{box-sizing:border-box}body{color:var(--ink);background:var(--surface);margin:0;font:14px Noto Sans JP,-apple-system,BlinkMacSystemFont,sans-serif}button,input,select,textarea{font:inherit}button,a{cursor:pointer}button{color:inherit;background:0 0;border:0;justify-content:center;align-items:center;gap:8px;display:inline-flex}button:disabled{opacity:.45;cursor:wait}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline-offset:3px;outline:3px solid #7aabf3}h1,h2,h3,p{margin:0}h1{letter-spacing:.015em;font-size:27px;font-weight:650}h2{font-size:18px;font-weight:650}h3{font-size:16px;font-weight:600}p{color:var(--muted);line-height:1.8}small{color:var(--muted);font-size:11px}.app{min-height:100vh;display:flex}.sidebar{border-right:1px solid var(--line);z-index:15;background:#fff;flex-direction:column;width:236px;padding:30px 18px 16px;display:flex;position:fixed;inset:0 auto 0 0}.brand{letter-spacing:.035em;align-items:center;gap:10px;padding:0 8px;font-size:22px;font-weight:750;text-decoration:none;display:flex}.brand small{letter-spacing:.1em;margin-top:4px;font-size:9px;display:block}.brand-mark{background:var(--blue);color:#fff;border-radius:11px;justify-content:center;align-items:center;width:39px;height:39px;display:flex;box-shadow:0 3px 8px #2864c822}.workspace{border:1px solid var(--line);border-radius:7px;align-items:center;gap:10px;margin:36px 4px 25px;padding:12px 8px;font-size:11px;font-weight:550;display:flex}.workspace-avatar{color:#677d98;background:#ecf0f5;border-radius:5px;place-items:center;width:28px;height:28px;display:grid}.workspace small{margin-top:3px;font-size:9px;display:block}.sidebar nav{flex-direction:column;gap:7px;display:flex}.sidebar nav button{color:#6a7c91;white-space:nowrap;border-radius:7px;justify-content:flex-start;padding:13px 14px;font-size:12px;font-weight:500}.sidebar nav button.active{background:var(--pale);color:var(--blue);font-weight:650}.nav-count{background:#dae7fb;border-radius:5px;margin-left:auto;padding:1px 5px;font-size:10px}.sidebar-bottom{margin-top:auto;padding-top:45px}.field-note{color:#95a3b4;padding:17px 10px 25px}.field-note strong{color:#697c94;margin:10px 0;font-size:11px;display:block}.field-note p{font-size:10px}.profile{border-top:1px solid var(--line);text-align:left;justify-content:flex-start;width:100%;padding-top:18px;font-size:11px;display:flex}.profile small{font-size:9px;display:block}.profile>svg{margin-left:auto}.avatar{width:32px;height:32px;color:var(--blue);background:#e5edf9;border-radius:50%;place-items:center;display:grid}.main{width:calc(100% - 236px);margin-left:236px}.topbar{border-bottom:1px solid var(--line);height:75px;color:var(--muted);background:#fff;justify-content:space-between;align-items:center;padding:0 40px;font-size:11px;display:flex}.topbar>div{align-items:center;gap:12px;display:flex}.date{font-size:11px}.content{max-width:1500px;margin:auto;padding:39px 40px 15px}.page-heading{justify-content:space-between;align-items:center;gap:24px;margin-bottom:30px;display:flex}.page-heading p{margin-top:9px;font-size:12px}.primary{background:var(--blue);color:#fff;border-radius:6px;padding:12px 18px;font-size:12px;font-weight:550;box-shadow:0 3px 8px #2864c818}.primary:hover{background:#1c52b0}.secondary{color:var(--ink);background:#fff;border:1px solid #d8e1eb;border-radius:6px;padding:11px 16px;font-size:12px}.secondary:hover{background:var(--pale)}.overview{border:1px solid var(--line);background:#fff;border-radius:9px;align-items:center;margin:0 0 35px;padding:24px 27px;display:flex}.overview-lead{flex:1;font-size:13px;font-weight:600}.overview-lead small{margin-top:8px;font-weight:400;display:block}.live-dot{background:#4c91a4;border-radius:50%;width:6px;height:6px;margin-right:8px;display:inline-block}.metric{border-left:1px solid var(--line);min-width:22%;padding:0 0 0 28px}.metric>span{color:var(--muted);font-size:11px}.metric strong{margin-top:6px;font-size:32px;font-weight:600;line-height:1.4;display:block}.metric strong small{margin-left:8px;font-size:11px;font-weight:400}.metric.in-progress strong{color:var(--blue)}.metric.complete strong{color:#3b8f7f}.section-heading{justify-content:space-between;align-items:center;gap:16px;margin:0 0 18px;display:flex}.section-heading p{margin-top:6px;font-size:11px}.text-button{color:var(--blue);white-space:nowrap;padding:8px 0;font-size:11px}.product-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-bottom:35px;display:grid}.product-card{text-align:left;border:1px solid var(--line);background:#fff;border-radius:9px;padding:0;transition:box-shadow .15s;display:block;overflow:hidden}.product-card:hover{box-shadow:0 4px 18px #324b6a12}.product-image{background:#edf2f7;height:190px;position:relative;overflow:hidden}.product-image svg{width:100%;height:100%}.part-number{color:#6b819a;letter-spacing:.025em;background:#ffffffda;border:1px solid #d9e2ed;border-radius:4px;padding:4px 8px;font-size:10px;position:absolute;top:14px;left:14px}.product-open{color:#7189a5;background:#fff;border-radius:50%;place-items:center;width:28px;height:28px;display:grid;position:absolute;bottom:12px;right:14px}.product-info{padding:19px 18px 17px}.product-info h3{font-size:14px}.product-info>div{color:var(--muted);justify-content:space-between;align-items:center;margin-top:14px;font-size:10px;display:flex}.product-info>div span:last-child{align-items:center;gap:3px;display:flex}.table-section{border:1px solid var(--line);background:#fff;border-radius:9px;margin-top:26px;overflow:hidden}.table-section .section-heading{margin:0;padding:23px 24px 18px}.table-section h2{font-size:16px}.table-scroll{overflow:auto}table{border-collapse:collapse;text-align:left;width:100%}th{color:#8391a3;border-top:1px solid var(--line);border-bottom:1px solid var(--line);white-space:nowrap;background:#f9fafc;padding:13px 22px;font-size:10px;font-weight:500}td{white-space:nowrap;border-bottom:1px solid #edf0f4;padding:18px 22px;font-size:11px}tr:last-child td{border-bottom:0}td strong{font-size:12px;font-weight:600}td small{margin-top:6px;font-size:10px;display:block}.subtle{color:#94a1b0;margin-left:5px}.status{color:#8995a4;white-space:nowrap;background:#f0f3f6;border-radius:4px;padding:4px 9px;font-size:10px}.status.in_progress{color:#376bc0;background:#edf3fd}.status.completed{color:#378474;background:#eaf5f0}.status.fail{color:#c25d46;background:#fff0eb}.serial-button{color:#7b91a9;gap:9px;padding:3px 0;font-size:11px}.search{border:1px solid var(--line);color:#91a0b1;background:#fff;border-radius:5px;align-items:center;gap:8px;padding:8px 10px;display:flex}.search input{width:160px;color:var(--ink);background:0 0;border:0;outline:0;font-size:10px}.content-footer{color:#9ba7b5;justify-content:space-between;padding:27px 0 10px;font-size:10px;display:flex}.content-footer span:first-child{font-weight:650}.empty{text-align:center;flex-direction:column;align-items:center;gap:15px;padding:55px 25px;display:flex}.empty>svg{color:#9badc0;width:32px;height:32px}.empty p{font-size:12px}.empty.compact{padding:35px}.template-grid{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.template-card{border:1px solid var(--line);background:#fff;border-radius:9px;padding:20px}.template-preview{color:#839bb5;background:#f3f6fa;place-items:center;height:180px;margin-bottom:20px;display:grid;position:relative}.template-preview span{font-size:10px;position:absolute;bottom:14px;right:14px}.template-card p{margin:10px 0 15px;font-size:11px}.template-card button{width:100%}.settings-summary{padding:30px}.table-title{padding:0 30px 20px}.error-banner{color:#a34535;z-index:99;background:#fff0ed;justify-content:space-between;padding:14px 35px;font-size:12px;display:flex;position:relative}.working{color:#fff;z-index:120;background:#23364b;border-radius:7px;align-items:center;gap:9px;padding:10px 17px;font-size:12px;display:flex;position:fixed;bottom:24px;left:50%}.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.modal-backdrop{z-index:80;background:#142a485c;justify-content:center;align-items:center;padding:25px;display:flex;position:fixed;inset:0}.modal{background:#fff;border-radius:12px;width:540px;max-height:90vh;padding:28px;overflow:auto;box-shadow:0 15px 80px #142a4833}.modal header{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.modal header h2{font-size:19px}.icon-button{padding:5px}.modal label{margin:15px 0;font-size:12px;display:block}.modal label>input:not([type=checkbox]),.modal select,.modal textarea{width:100%;color:var(--ink);background:#fff;border:1px solid #d7e0ea;border-radius:5px;margin-top:8px;padding:10px;display:block}.modal fieldset{border:1px solid var(--line);border-radius:6px;margin:18px 0;padding:10px 14px}.modal legend{color:var(--muted);font-size:11px}.modal .checkbox{align-items:center;gap:9px;display:flex}.modal .hint{margin:15px 0 20px;font-size:11px}.modal form>.primary{width:100%;margin-top:15px}.form-row{align-items:center;gap:10px;display:flex}.form-row>*{flex:1;min-width:0}.form-row input{border:1px solid var(--line);border-radius:4px;width:100%;padding:7px}.template-field>input{border:1px solid var(--line);width:100%;padding:8px}.selection-summary{background:var(--surface);border-radius:6px;align-items:center;gap:15px;padding:20px;display:flex}.selection-summary small{margin-top:6px;display:block}.detail-blueprint{background:#f1f5f9}.detail-blueprint svg{width:100%;height:190px}.part-number-static{margin:14px 0;font-size:11px}.detail-actions{gap:12px;margin-bottom:25px;display:flex}.product-detail h3{margin-top:25px}.document-row{border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:13px 0;font-size:11px;display:flex}.document-row small{margin-left:auto}.login{background:#eef3fa;flex-direction:column;justify-content:center;align-items:center;gap:20px;min-height:100vh;display:flex}.login .brand-mark{width:60px;height:60px}.login .primary{min-width:200px}.error,.red{color:#b5473e}.inspection-screen{background:var(--surface);z-index:50;flex-direction:column;display:flex;position:fixed;inset:0}.inspection-header{border-bottom:1px solid var(--line);background:#fff;align-items:center;gap:24px;padding:16px 25px;display:flex}.inspection-header>div{flex:1}.inspection-header strong{font-size:16px}.inspection-header small{margin-top:6px;font-size:10px;display:block}.sheet-tabs{border-bottom:1px solid var(--line);background:#fff;gap:8px;padding:12px 24px;display:flex;overflow:auto}.sheet-tabs button{white-space:nowrap;background:#f1f4f8;border-radius:6px;padding:10px 16px;font-size:12px}.sheet-tabs button.active{background:var(--blue);color:#fff}.sheet-tabs small{color:inherit;font-size:9px}.inspection-body{flex:1;min-height:0;display:flex}.canvas-area{background:#e8edf3;flex-direction:column;flex:1;min-width:0;display:flex}.tools{background:#fff;border-radius:8px;align-self:center;gap:5px;margin:15px;padding:6px;display:flex;box-shadow:0 3px 15px #23364b12}.tools button{border-radius:5px;flex-direction:column;gap:4px;padding:9px 18px;font-size:9px}.tools button.active{background:var(--blue);color:#fff}.paper-scroller{flex:1;padding:5px 25px 25px;overflow:auto}.paper{aspect-ratio:3/4;touch-action:none;background:#fff;width:100%;position:relative;box-shadow:0 3px 20px #22354b1a}.paper.mode-move{touch-action:pan-x pan-y}.sheet-bg,.marks{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.sheet-bg{object-fit:fill}.marks{overflow:visible}.canvas-footer{color:#7e91a6;background:#f7f9fb;border-top:1px solid #dae2eb;justify-content:space-between;align-items:center;padding:12px 25px;font-size:10px;display:flex}.canvas-footer>div{align-items:center;gap:10px;display:flex}.canvas-footer button{padding:6px;font-size:12px}.inspection-panel{border-left:1px solid var(--line);background:#fff;width:270px;padding:27px 22px;overflow:auto}.inspection-panel h3{font-size:14px}.inspection-panel p{margin:8px 0 20px;font-size:10px}.field-input{margin:24px 0;display:block}.field-input>span{font-size:12px}.field-input>span small{background:#eff3f8;margin-left:8px;padding:2px 5px;font-size:9px}.field-input>div{border:1px solid #dae2ec;border-radius:5px;align-items:center;margin:8px 0;padding:0 12px;display:flex}.field-input input:not([type=checkbox]){width:100%;color:var(--blue);border:0;outline:none;padding:11px 0;font-size:18px}.field-input input[type=checkbox]{width:23px;height:23px;accent-color:var(--blue);margin:14px 0;display:block}.field-input>small{font-size:9px;display:block}.judgment{border-top:1px solid var(--line);border-bottom:1px solid var(--line);justify-content:space-between;margin:25px 0;padding:20px 0;font-size:12px;display:flex}.judgment span{color:#3d8b7a}.upload-button{color:var(--blue);cursor:pointer;border:1px dashed #b6c5d8;border-radius:6px;justify-content:center;align-items:center;gap:9px;padding:12px;font-size:11px;display:flex}.upload-button input{display:none}@media (min-width:1500px){.product-image{height:230px}}@media (max-width:1100px){.sidebar{width:200px;padding-left:12px;padding-right:12px}.main{width:calc(100% - 200px);margin-left:200px}.brand{font-size:20px}.content{padding:30px 25px}.topbar{padding:0 25px}.product-grid{gap:14px}.product-image{height:150px}.metric{padding-left:20px}.page-heading h1{font-size:23px}.overview-lead{max-width:150px}.overview{padding:20px}.inspection-panel{width:240px}.tools button{padding:8px 13px}}@media (max-width:800px){.sidebar{width:74px;padding:24px 10px}.brand{justify-content:center;padding:0}.brand>span:last-child,.workspace,.sidebar nav button{font-size:0}.sidebar nav{margin-top:35px}.sidebar nav button{justify-content:center;padding:13px}.sidebar nav svg{flex-shrink:0}.nav-count,.field-note,.profile>span:not(.avatar),.profile>svg{display:none}.profile{justify-content:center}.main{width:calc(100% - 74px);margin-left:74px}.content{padding:25px 20px}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.product-card:nth-child(3),.overview-lead{display:none}.metric{flex:1;min-width:0}.metric:first-of-type{border:0}.template-grid{grid-template-columns:repeat(2,1fr)}.page-heading{align-items:flex-start}.page-heading .primary{white-space:nowrap;padding:10px;font-size:10px}.page-heading h1{font-size:21px}.page-heading p{font-size:10px}.inspection-header{gap:12px;padding:14px}.inspection-header .status{display:none}.inspection-header .text-button{font-size:0}.inspection-header .primary{padding:12px}.inspection-panel{width:210px;padding:20px 15px}.paper-scroller{padding:8px 15px}.tools button{padding:8px 10px}.canvas-footer>span{display:none}}@media (max-width:600px){.sidebar{width:60px}.main{width:calc(100% - 60px);margin-left:60px}.topbar{height:60px;padding:0 16px}.date{display:none}.content{padding:24px 15px}.page-heading{flex-direction:column;gap:14px}.page-heading h1{font-size:20px}.overview{margin-bottom:25px;padding:17px 10px}.metric{padding-left:12px}.metric strong{font-size:26px}.metric>span{font-size:9px}.product-grid{grid-template-columns:1fr}.product-card:nth-child(3){display:block}.product-image{height:190px}.section-heading{align-items:flex-start}.section-heading h2{font-size:15px}.section-heading .text-button{font-size:0}.table-section .section-heading{flex-direction:column;padding:18px}.table-section table{min-width:660px}.template-grid{grid-template-columns:1fr}.content-footer span:last-child{display:none}.modal-backdrop{padding:12px}.modal{padding:22px}.inspection-body{flex-direction:column;overflow:auto}.canvas-area{min-height:70vh}.inspection-panel{border:0;width:100%}.inspection-panel .field-input{width:45%;margin:15px 2%;display:inline-block}.inspection-header strong{font-size:13px}.inspection-header small{font-size:8px}.sheet-tabs{padding:10px}.tools{margin:10px}.tools button{padding:8px}.tools button span{font-size:8px}.inspection-header .primary{font-size:10px}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.master-editor{z-index:100;background:#e8edf3;padding:25px;position:fixed;inset:0;overflow:auto}.master-editor>header{background:#fff;align-items:center;gap:18px;padding:20px;display:flex}.master-editor>header h2{font-size:16px}.master-editor>header p{flex:1;font-size:11px}.master-editor>.tools{width:max-content;margin:15px auto}.master-paper{max-width:700px;margin:0 auto 30px}.login{padding:32px 20px}.login-methods{flex-direction:column;gap:12px;width:min(100%,360px);display:flex}.login-methods>button{width:100%;min-height:50px;font-weight:600}.login-tabs{background:#dfe6f0;border-radius:10px;gap:4px;margin-bottom:10px;padding:4px;display:flex}.login-tabs button{background:0 0;border:0;flex:1}.login-tabs button.active{background:#fff;box-shadow:0 1px 4px #19253b15}.login-methods .apple-login{color:#fff;background:#111;border-color:#111}.login-methods .google-login{color:#25334a;background:#fff}.login-divider{text-align:center;color:var(--muted);margin:3px 0;font-size:12px}.login-help{color:var(--muted);text-align:center;margin-top:8px;font-size:12px;line-height:1.7}.policy-page{overflow-wrap:anywhere;max-width:800px;margin:0 auto;padding:40px 24px 72px;line-height:1.9}.policy-page h1{margin:28px 0 8px;font-size:clamp(24px,5vw,32px)}.policy-page h2{margin:32px 0 12px;font-size:20px}.policy-page p{margin:12px 0}.policy-page a{color:#285fb5;text-underline-offset:3px;text-decoration:underline}.policy-date{color:#64748b;font-size:14px}.policy-page footer{flex-wrap:wrap;gap:20px;margin-top:40px;font-size:14px;display:flex}
