:root{--ink: #1d1d1f;--ink-2: #6e6e73;--ink-3: #86868b;--tsubame: #13a4b6;--accent: #0a7a8f;--accent-focus: #086578;--canvas: #ffffff;--canvas-parchment: #f5f5f7;--surface-pearl: #fafafc;--hairline: #e0e0e0;--divider: #f0f0f0;--s-yoyaku: #4e6191;--s-shinko: #b96e08;--s-kanryo: #1a8456;--s-error: #ce2f49;--s-cancel: #97a0ae;--unassigned: #c2410c;--w-hoan: #0e8a6e;--w-keiho: #2d6cf6;--w-tentaku: #7a4fd0;--w-kaihei: #c2710c;--w-haiso: #3d54b5;--w-kenshin: #1a8456;--r: 18px;--r-md: 11px;--r-sm: 8px;--mono: ui-monospace, "SF Mono", SFMono-Regular, Menlo, Consolas, monospace;--sans: "SF Pro Text", "SF Pro Display", system-ui, -apple-system, "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic UI", "Meiryo", sans-serif;--nav-w: 230px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%}body{font-family:var(--sans);color:var(--ink);-webkit-font-smoothing:antialiased;font-size:14px;line-height:1.5;background:var(--canvas-parchment);position:relative;overflow:hidden}.bg{position:fixed;top:0;right:0;bottom:0;left:0;z-index:-2;background:var(--canvas-parchment)}button{font-family:inherit;cursor:pointer}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:6px}@media (prefers-reduced-motion: reduce){*{animation:none!important;transition:none!important}}.app{display:grid;grid-template-columns:var(--nav-w) 1fr;height:100vh;padding:12px;gap:12px}.nav{background:var(--canvas);border:1px solid var(--hairline);border-radius:var(--r);padding:16px 12px;display:flex;flex-direction:column;gap:2px;overflow:hidden}.brand{display:flex;align-items:center;gap:10px;padding:4px 8px 16px;border-bottom:1px solid var(--divider);margin-bottom:10px}.brand svg{width:24px;height:24px;flex:none}.brand .brand-logo{width:26px;height:26px;object-fit:contain;flex:none}.brand .t{font-weight:700;font-size:16px;letter-spacing:-.2px}.brand .t small{display:block;font-size:10.5px;font-weight:600;color:var(--ink-3);letter-spacing:.05em;margin-top:1px}.nav-toggle{margin-left:auto;width:30px;height:30px;flex:none;display:grid;place-items:center;border:1px solid var(--hairline);background:var(--canvas);border-radius:var(--r-sm);color:var(--ink-2);cursor:pointer}.nav-toggle:hover{background:var(--canvas-parchment);color:var(--ink)}.nav-toggle svg{width:16px;height:16px}.app.nav-collapsed{--nav-w: 64px}.app.nav-collapsed .brand{justify-content:center}.app.nav-collapsed .brand .brand-logo,.app.nav-collapsed .brand .t,.app.nav-collapsed .nav-sec,.app.nav-collapsed .nav-item .lbl,.app.nav-collapsed .nav-item .badge,.app.nav-collapsed .nav-user .nm,.app.nav-collapsed .nav-user .rl{display:none}.app.nav-collapsed .nav-toggle{margin-left:0}.app.nav-collapsed .nav-item{justify-content:center;padding:9px 0}.app.nav-collapsed .nav-user{justify-content:center}.nav-sec{font-size:10px;font-weight:700;letter-spacing:.1em;color:var(--ink-3);text-transform:uppercase;padding:13px 10px 5px}.nav-item{display:flex;align-items:center;gap:11px;padding:9px 11px;border-radius:var(--r-md);color:var(--ink-2);font-size:13.5px;font-weight:500;border:none;background:none;width:100%;text-align:left;min-height:42px;transition:background .15s}.nav-item .ic{width:18px;height:18px;flex:none;opacity:.6}.nav-item:hover{background:var(--canvas-parchment)}.nav-item.on{background:#0a7a8f14;color:var(--accent);font-weight:600}.nav-item.on .ic{opacity:1;color:var(--accent)}.nav-item .badge{margin-left:auto;font-size:11px;font-variant-numeric:tabular-nums;background:#0a7a8f1a;color:var(--accent);border-radius:999px;padding:1px 8px;min-width:22px;text-align:center;font-weight:700}.nav-spacer{flex:1}.nav-user{display:flex;align-items:center;gap:10px;padding:10px;border-top:1px solid var(--divider);margin-top:8px}.nav-user .dot{width:8px;height:8px;border-radius:50%;background:#34c759;flex:none}.nav-user .nm{font-size:13px;font-weight:700}.nav-user .rl{font-size:10.5px;color:var(--ink-3)}.main{display:flex;flex-direction:column;min-width:0;gap:12px;overflow:hidden}.view{display:flex;flex-direction:column;min-height:0;flex:1;gap:12px}.topbar{background:var(--canvas);border:1px solid var(--hairline);border-radius:var(--r);padding:11px 16px;display:flex;align-items:center;gap:11px;flex-wrap:wrap}.view-title{font-size:15px;font-weight:700;letter-spacing:-.2px;white-space:nowrap}.seg{display:inline-flex;background:var(--canvas-parchment);border:1px solid var(--hairline);border-radius:var(--r-md);padding:3px}.seg button{border:none;background:none;font-size:12.5px;font-weight:500;color:var(--ink-2);padding:6px 13px;border-radius:var(--r-sm);min-height:32px}.seg button.on{background:var(--canvas);color:var(--ink);font-weight:600;box-shadow:0 1px 3px #00000014}.search{display:flex;align-items:center;gap:8px;background:var(--canvas-parchment);border:1px solid var(--hairline);border-radius:9999px;padding:0 14px;min-width:190px;flex:1;max-width:300px}.search svg{width:15px;height:15px;color:var(--ink-3);flex:none}.search input{border:none;background:none;outline:none;font-family:inherit;font-size:13px;color:var(--ink);padding:9px 0;width:100%}.search input::placeholder{color:var(--ink-3)}.spacer{flex:1}.btn{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--hairline);background:var(--canvas);color:var(--ink-2);font-size:13px;font-weight:500;padding:0 13px;height:36px;border-radius:var(--r-sm);white-space:nowrap;transition:background .15s}.btn:hover{background:var(--canvas-parchment);color:var(--ink)}.btn-primary{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600;border-radius:9999px}.btn-primary:hover{background:var(--accent-focus);border-color:var(--accent-focus);color:#fff}.btn .ic{width:15px;height:15px}.placeholder{flex:1;display:grid;place-items:center;padding:40px;text-align:center;background:var(--canvas);border:1px solid var(--hairline);border-radius:var(--r)}.placeholder .box{max-width:400px}.placeholder .ic{width:42px;height:42px;color:var(--ink-3);margin:0 auto 14px}.placeholder h2{font-size:17px;letter-spacing:-.3px;margin-bottom:8px}.placeholder p{font-size:13px;color:var(--ink-2);line-height:1.75}.phase-tag{display:inline-block;margin-top:14px;font-size:11.5px;font-weight:600;color:var(--accent);background:#0a7a8f14;border:1px solid rgba(10,122,143,.2);border-radius:999px;padding:4px 13px}.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%) translateY(16px);background:#1d1d1fe6;color:#fff;font-size:13px;font-weight:600;padding:11px 18px;border-radius:12px;opacity:0;pointer-events:none;transition:.24s;z-index:200}.toast.show{opacity:1;transform:translate(-50%)}@media (max-width: 880px){:root{--nav-w: 62px}.brand .t,.nav-sec,.nav-item span.lbl,.nav-item .badge,.nav-user .nm,.nav-user .rl{display:none}.nav-item,.brand{justify-content:center}}.fg{display:flex;flex-direction:column;gap:5px;margin-bottom:13px}.fl{font-size:11px;font-weight:700;letter-spacing:.05em;color:var(--ink-3)}.fl .rq{color:#ce2f49;margin-left:2px}.fl .ro{color:var(--ink-3);font-weight:500;margin-left:6px;font-size:10px}.fi,.fs,.fta{width:100%;padding:9px 12px;border:1px solid var(--hairline);background:var(--canvas);border-radius:var(--r-sm);font-family:inherit;font-size:13.5px;color:var(--ink);outline:none;transition:border-color .15s}.fi:focus,.fs:focus,.fta:focus{border-color:var(--accent)}.fta{min-height:60px;resize:vertical;line-height:1.6}.fs{-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath fill='%2386868b' d='M5 6L0 0h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 11px center;padding-right:28px;background-color:var(--canvas)}.fi:disabled,.fs:disabled{background:var(--canvas-parchment);color:var(--ink-3);cursor:not-allowed}.fi[readonly],.fta[readonly]{background:var(--canvas-parchment);color:var(--ink-2);cursor:default}.fi[readonly]:focus,.fta[readonly]:focus{border-color:var(--hairline)}.row{display:grid;gap:11px}.row.c2{grid-template-columns:1fr 1fr}.triple{display:grid;grid-template-columns:1fr 1fr 1fr;gap:9px}.inline{display:flex;align-items:center;gap:8px}.chk{display:inline-flex;align-items:center;gap:7px;font-size:13px;font-weight:500;color:var(--ink-2);background:var(--canvas);border:1px solid var(--hairline);border-radius:999px;padding:7px 13px;cursor:pointer;-webkit-user-select:none;user-select:none;min-height:38px}.chk input{width:16px;height:16px;accent-color:var(--accent)}.chk:has(input:checked){background:#0a7a8f14;color:var(--accent);border-color:#0a7a8f40;font-weight:600}.flash{animation:flash 1s ease}@keyframes flash{0%{background:#0a7a8f26}}.smodal-scrim,.smodal-dialog{--ink: #172033;--ink-2: #526071;--ink-3: #8793a4;--line: rgba(255, 255, 255, .72);--line-2: rgba(120, 145, 178, .22);--m-accent: #2d6cf6;--m-teal: #128f99;--m-danger: #c9344f;--soft-blue: #eef5ff;--m-shadow: 0 24px 80px rgba(20, 32, 52, .24);--m-shadow-sm: 0 8px 24px rgba(20, 32, 52, .1);--hi: inset 0 1px 0 rgba(255, 255, 255, .78);--m-mono: ui-monospace, "SF Mono", Menlo, Consolas, monospace}.smodal-scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;background:#111c2e3d;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:grid;place-items:center;padding:18px;color:var(--ink);font-size:13px}.smodal-scrim *{box-sizing:border-box}.smodal-scrim button,.smodal-scrim input,.smodal-scrim select,.smodal-scrim textarea{font:inherit}.smodal-scrim button{cursor:pointer}.smodal{width:min(1140px,100%);height:min(780px,calc(100vh - 36px));display:grid;grid-template-rows:auto 1fr auto;overflow:hidden;border:1px solid var(--line);border-radius:16px;background:#ffffffd1;-webkit-backdrop-filter:blur(28px) saturate(175%);backdrop-filter:blur(28px) saturate(175%);box-shadow:var(--m-shadow),var(--hi)}.smodal-hd{display:flex;align-items:center;gap:10px;padding:12px 22px;border-bottom:1px solid rgba(153,170,195,.24);background:#ffffff70}.smodal-hd .title{font-size:16px;font-weight:900}.smodal-hd .badge{font-size:11px;font-weight:900;color:var(--m-accent);background:var(--soft-blue);border:1px solid #d3e2ff;border-radius:999px;padding:3px 8px}.head-audit{margin-left:auto;display:flex;align-items:center;gap:7px;color:var(--ink-2);font-size:10.5px;font-weight:800;white-space:nowrap}.head-audit span{display:inline-flex;gap:3px;align-items:center}.head-audit b{color:var(--ink-3);font-weight:900}.tiny-btn{height:26px;border:1px solid var(--line);background:#ffffff94;border-radius:7px;padding:0 8px;font-size:10.5px;font-weight:900;color:var(--ink-2);box-shadow:var(--hi)}.smodal-close{width:30px;height:30px;border:1px solid var(--line);background:#ffffff94;border-radius:8px;color:var(--ink-2);font-size:18px;display:grid;place-items:center;box-shadow:var(--hi)}.smodal-body{min-height:0;overflow:auto;background:#f4f7fb6b;padding:12px}.smodal .layout{display:grid;grid-template-columns:1fr 1fr;gap:10px;align-items:start}.smodal .section{background:#e2ebf78a;-webkit-backdrop-filter:blur(22px) saturate(165%);backdrop-filter:blur(22px) saturate(165%);border:1px solid rgba(255,255,255,.86);border-radius:12px;overflow:hidden;box-shadow:var(--m-shadow-sm),var(--hi)}.smodal .section+.section{margin-top:10px}.smodal .section-hd{display:flex;align-items:center;gap:8px;min-height:48px;padding:10px 12px;border-bottom:1px solid var(--line-2);background:linear-gradient(180deg,#ffffff9e,#ffffff57)}.smodal .section-hd h2{margin:0;font-size:13px;font-weight:900}.smodal .section-body{padding:11px;background:#d2def033}.smodal .grid{display:grid;gap:8px}.smodal .g2{grid-template-columns:1fr 1fr}.smodal .g3{grid-template-columns:1fr 1fr 1fr}.smodal .assign-row{grid-template-columns:1fr 1.35fr 1fr}.smodal .date-row{grid-template-columns:118px 56px 56px auto;align-items:end}.smodal .meter-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;align-items:end}.smodal .field{display:flex;flex-direction:column;gap:3px;min-width:0}.smodal label{font-size:11px;font-weight:900;color:var(--ink-2)}.smodal .req{color:var(--m-danger)}.smodal .label-row{display:flex;align-items:center;justify-content:space-between;gap:6px}.smodal input,.smodal select,.smodal textarea{width:100%;min-height:32px;border:1px solid rgba(255,255,255,.82);border-radius:8px;background:#ffffffc7;color:var(--ink);padding:6px 8px;outline:none;box-shadow:var(--hi)}.smodal textarea{resize:vertical}.smodal .memo1{min-height:34px}.smodal .memo5{min-height:118px}.smodal input:focus,.smodal select:focus,.smodal textarea:focus{border-color:var(--m-accent);box-shadow:0 0 0 3px #2d6cf61f}.smodal input.invalid,.smodal select.invalid,.smodal textarea.invalid{border-color:#c9344fdb;background:#fff1f3c7;box-shadow:0 0 0 3px #c9344f1f,var(--hi)}.smodal input.flash,.smodal select.flash,.smodal textarea.flash{animation:smodal-flash 1s ease}@keyframes smodal-flash{0%{box-shadow:0 0 0 3px #128f9957,var(--hi)}to{box-shadow:var(--hi)}}.smodal .mono{font-family:var(--m-mono);font-variant-numeric:tabular-nums}.smodal .time-input{text-align:center}.smodal .quick{display:flex;gap:5px;flex-wrap:nowrap;align-items:end}.smodal .chip{height:32px;width:58px;justify-content:center;border:1px solid var(--line);border-radius:999px;background:#ffffffad;color:var(--ink-2);padding:0;font-size:11px;font-weight:900;box-shadow:var(--hi);display:inline-flex;align-items:center}.smodal .chip:hover{background:var(--soft-blue);border-color:#c8dbff;color:var(--m-accent)}.smodal .mini-check{display:inline-flex;align-items:center;gap:4px;height:18px;background:#ffffff61;border-radius:999px;padding:0 6px;font-size:9.5px;font-weight:900;color:#526071db}.smodal .mini-check input{width:11px;height:11px;min-height:0;padding:0;accent-color:var(--m-accent);box-shadow:none}.smodal .section-tools{margin-left:auto;display:flex;align-items:center;gap:7px}.smodal .section-tools input{width:96px;min-height:26px;height:26px;background:#ffffffb3;font-size:11px;padding:3px 7px}.smodal .section-tools .btn-teal{height:26px;padding:0 9px;font-size:10.5px;background:var(--m-teal);border-color:var(--m-teal);color:#fff;border-radius:9px}.smodal .section-tools .code-btn{height:26px;padding:0 9px;font-size:10.5px;background:#ffffffd1;border-color:#128f9961;color:var(--m-teal);border-radius:9px}.smodal .status-btn{height:18px;padding:0 7px;font-size:10px;border:1px solid rgba(45,108,246,.28);background:#eef5ffdb;color:var(--m-accent);border-radius:999px;font-weight:900}.smodal .new-address{display:none;margin-top:8px;gap:6px;padding:8px;border:1px solid rgba(94,132,190,.28);border-radius:12px;background:#c8d8f061;box-shadow:var(--hi)}.smodal .new-address.show{display:grid}.smodal .new-address h3{margin:0;font-size:12px;color:var(--m-accent);font-weight:900}.smodal .new-address-head{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:center}.smodal .new-zip-field{display:grid;grid-template-columns:auto 90px auto;gap:6px;align-items:center;justify-self:end}.smodal .new-zip-field label{font-size:10px}.smodal .new-zip-field input{height:26px;min-height:26px;font-size:11px;padding:3px 7px}.smodal .zip-btn{height:26px;padding:0 9px;font-size:11px;border:1px solid rgba(45,108,246,.28);background:#eef5ffdb;color:var(--m-accent);border-radius:999px;font-weight:900}.smodal .value{min-height:32px;border:1px solid rgba(255,255,255,.82);border-radius:8px;background:#ffffffa3;padding:7px 8px;font-weight:800;color:var(--ink);box-shadow:var(--hi)}.smodal .value.memo{min-height:92px;line-height:1.6;white-space:pre-wrap}.smodal .related-list{display:grid;gap:6px}.smodal .related-row{display:grid;grid-template-columns:78px 1fr 1fr auto;gap:8px;align-items:center;min-height:32px;border:1px solid rgba(255,255,255,.7);background:#ffffff75;border-radius:8px;padding:6px 8px;font-size:12px}.smodal .related-row .date{font-family:var(--m-mono);color:var(--ink-3);font-weight:900}.smodal .related-row .note{color:var(--ink-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.smodal .related-row .cust{font-weight:900}.smodal .related-row .pill-btn{height:26px;padding:0 9px;font-size:11px;border:1px solid rgba(45,108,246,.28);background:#eef5ffdb;color:var(--m-accent);border-radius:999px;font-weight:900}.smodal .related-empty{color:var(--ink-3);font-size:12px;font-weight:800;padding:4px 2px}.smodal-ft{display:flex;align-items:center;gap:8px;padding:10px 22px;border-top:1px solid rgba(153,170,195,.24);background:#ffffff75;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.smodal-ft .footer-right{margin-left:auto;display:flex;align-items:center;gap:14px}.smodal .btn{height:34px;border:1px solid var(--line);background:#ffffff94;border-radius:9px;padding:0 12px;display:inline-flex;align-items:center;justify-content:center;gap:7px;font-weight:800;color:var(--ink-2);white-space:nowrap;box-shadow:var(--hi)}.smodal .btn:hover{border-color:#bfcbd9;color:var(--ink)}.smodal .btn-primary{background:var(--m-accent);border-color:var(--m-accent);color:#fff}.smodal .btn-primary:hover{background:#245ed8;color:#fff}.smodal .btn-danger{color:var(--m-danger);border-color:#c9344f4d}.smodal .btn-danger:hover{background:#c9344f14;color:var(--m-danger)}.smodal .btn:disabled{opacity:.55;cursor:not-allowed}.smodal-ft .footer-right .btn{width:104px}.smodal-ft.three{justify-content:space-between}.smodal-ft.three .btn{width:120px}.smodal-dialog{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;background:#111c2e47;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:90;padding:18px;color:var(--ink);font-size:13px}.smodal-dialog .dialog-box{width:min(620px,100%);background:#ffffffeb;-webkit-backdrop-filter:blur(28px) saturate(170%);backdrop-filter:blur(28px) saturate(170%);border:1px solid var(--line);border-radius:14px;box-shadow:var(--m-shadow);overflow:hidden}.smodal-dialog .dialog-hd{display:flex;align-items:center;gap:10px;padding:12px 14px;border-bottom:1px solid var(--line-2)}.smodal-dialog .dialog-hd h3{margin:0;font-size:14px}.smodal-dialog .dialog-hd .tiny-btn{margin-left:auto}.smodal-dialog .dialog-body{padding:12px;display:grid;gap:8px;max-height:60vh;overflow:auto}.smodal-dialog .reserve-row{display:grid;grid-template-columns:132px 1fr 1.6fr;gap:10px;align-items:center;border:1px solid var(--line-2);border-radius:8px;background:#ffffff85;padding:8px;font-size:12px}.smodal-dialog .reserve-row b{font-family:var(--m-mono)}.smodal-dialog .dialog-empty{color:var(--ink-3);font-weight:800;padding:6px 2px}.smodal.mini{width:min(760px,100%);height:auto;max-height:calc(100vh - 80px)}.smodal.mini .qd-close{margin-left:auto}@media (max-width: 920px){.smodal-scrim{padding:0;place-items:stretch}.smodal{height:100vh;border-radius:0}.smodal .layout,.smodal .g2,.smodal .g3,.smodal .assign-row,.smodal .date-row,.smodal .meter-row{grid-template-columns:1fr}.head-audit{display:none}}.datenav{display:inline-flex;align-items:center;gap:4px;background:var(--canvas);border:1px solid var(--hairline);border-radius:var(--r-md);padding:3px}.datenav button{width:34px;height:32px;border:none;background:none;border-radius:var(--r-sm);font-size:17px;color:var(--ink-2)}.datenav button:hover{background:var(--canvas-parchment)}.datenav .d{font-size:13.5px;font-weight:700;padding:0 8px;font-variant-numeric:tabular-nums;min-width:118px;text-align:center}.fsel{-moz-appearance:none;appearance:none;-webkit-appearance:none;background:var(--canvas);border:1px solid var(--hairline);border-radius:var(--r-sm);padding:8px 30px 8px 12px;font-family:inherit;font-size:13px;font-weight:500;color:var(--ink);cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath fill='%2386868b' d='M5 6L0 0h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 11px center}.arrow{color:var(--ink-3);font-size:12px;margin:0 -4px}.kpi{font-size:12.5px;color:var(--ink-2)}.kpi b{color:#c2410c;font-variant-numeric:tabular-nums;font-size:14px}.board{flex:1;display:flex;gap:12px;overflow-x:auto;overflow-y:hidden;padding-bottom:4px;min-height:0}.board .col{flex:0 0 218px;background:var(--canvas);border:1px solid var(--hairline);border-radius:14px;display:flex;flex-direction:column;min-height:0;overflow:hidden}.board .col.pool{flex:0 0 236px;background:#c2410c0a;border-color:#c2410c26}.board .col-hd{padding:10px 12px;border-bottom:1px solid var(--divider);display:flex;align-items:center;gap:7px}.col-name{font-size:13.5px;font-weight:700;white-space:nowrap}.col-count{font-size:11px;font-weight:700;font-variant-numeric:tabular-nums;background:#0a7a8f1a;color:var(--accent);border-radius:999px;padding:2px 8px}.board .col.pool .col-name{margin-right:auto}.board .col.pool .col-count{margin-left:auto;background:#c2410c1a;color:#c2410c}.att{display:inline-flex;gap:3px;margin-left:auto}.att button{width:25px;height:26px;border:1px solid var(--hairline);background:var(--canvas-parchment);border-radius:6px;font-size:12px;font-weight:700;color:var(--ink-3);padding:0;line-height:1}.att button.on[data-a=出]{background:#1a84561a;color:#1a8456;border-color:#1a845640}.att button.on[data-a=△]{background:#b96e081a;color:#b96e08;border-color:#b96e0840}.att button.on[data-a=×]{background:#ce2f491a;color:#ce2f49;border-color:#ce2f4940}.att button.on[data-a=休]{background:var(--canvas-parchment);color:var(--ink-3);border-color:var(--hairline)}.board .col.off .col-name{color:var(--ink-3)}.board .col.off .col-body{opacity:.55}.col-body{flex:1;overflow-y:auto;padding:10px;display:flex;flex-direction:column;gap:8px;min-height:60px}.card{background:var(--canvas);border:1px solid var(--hairline);border-left:4px solid var(--ink-2);border-radius:10px;padding:9px 10px;cursor:grab;transition:box-shadow .12s}.card:hover{box-shadow:0 4px 12px #00000014}.card:active{cursor:grabbing}.card.dragging{opacity:.4}.card.sel{outline:2px solid var(--accent);outline-offset:1px;box-shadow:0 4px 12px #0a7a8f2e}.card-top{display:flex;align-items:center;gap:6px;margin-bottom:3px}.ctime{font-family:var(--mono);font-size:11.5px;font-weight:600;color:var(--ink-2);font-variant-numeric:tabular-nums}.csel{font-size:10px;font-weight:700;color:var(--accent);background:#0a7a8f1a;border:1px solid rgba(10,122,143,.22);border-radius:999px;padding:1px 7px;margin-left:6px}.cdetail{width:22px;height:22px;margin-left:auto;border:1px solid var(--hairline);background:var(--canvas-parchment);border-radius:6px;display:grid;place-items:center;color:var(--ink-3);padding:0;flex:none}.cdetail:hover{background:#0a7a8f14;color:var(--accent)}.cdetail svg{width:13px;height:13px}.cflag{width:7px;height:7px;border-radius:50%;background:#ce2f49;margin-left:6px;flex:none}.cwork{font-size:13px;font-weight:700;margin-bottom:2px}.ccust{font-size:11.5px;color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ccust .caddr{color:var(--ink-3)}.cbiko{font-size:11px;color:#9b1c1c;background:#ce2f4912;border-radius:5px;padding:3px 6px;margin-top:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.board.picking .col-body{outline:1.5px dashed rgba(10,122,143,.35);outline-offset:-6px;border-radius:10px}.board .col.over .col-body{background:#0a7a8f0f;outline:1.5px solid var(--accent);outline-offset:-6px;border-radius:10px}.col-empty{flex:1;display:grid;place-items:center;color:var(--ink-3);font-size:11.5px;text-align:center}.phone-tablecard tbody td{height:auto;white-space:normal;padding:11px 13px;vertical-align:top}.phone-tablecard .c-mono{white-space:nowrap;color:var(--ink-2)}.phone-tablecard .c-name{font-weight:600;white-space:nowrap}.phone-tablecard .c-text{max-width:280px;color:var(--ink-2);font-size:12.5px;line-height:1.5}.phone-tablecard .c-text.resp{color:var(--ink-3)}.base-tag{display:inline-block;font-size:11px;font-weight:600;padding:2px 7px;border-radius:5px}.base-本社{background:#eaf1fe;color:#2d6cf6}.base-倉敷{background:#f0eafb;color:#7a4fd0}.base-福山{background:#e2f4ef;color:#0e8a6e}.dw-title{font-size:15px;font-weight:700;letter-spacing:-.2px}.cust-row{display:flex;align-items:flex-end;gap:8px}.cust-row .fg{flex:1;margin-bottom:13px}.asref{height:38px;margin-bottom:13px;padding:0 12px;border:1px solid rgba(10,122,143,.25);background:#0a7a8f14;color:var(--accent);font-weight:600;font-size:12px;border-radius:999px;white-space:nowrap;transition:background .12s}.asref:hover{background:#0a7a8f24}.dw-foot button.btn-danger{flex:0 0 auto}.dw-foot button.btn-primary{background:var(--accent);border-color:var(--accent);color:#fff;border-radius:9999px}.dw-foot button.btn-primary:hover{background:var(--accent-focus);border-color:var(--accent-focus)}.authpage{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1;overflow:auto;color:#1d1d1f;font-family:SF Pro Text,SF Pro Display,system-ui,-apple-system,Hiragino Sans,Yu Gothic UI,Meiryo,sans-serif;background:#f5f5f7}.authpage .login-scene{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:16px}.authpage .login-card{width:min(440px,92vw);padding:44px 40px 46px;background:#fff;border:1px solid #e0e0e0;border-radius:18px;box-shadow:0 4px 24px #0000000f;display:flex;flex-direction:column;align-items:center;text-align:center}.authpage .login-logo{width:72px;height:72px;object-fit:contain;margin-bottom:22px}.authpage .login-title{font-size:21px;font-weight:700;margin:0;letter-spacing:-.3px;word-break:keep-all}.authpage .login-divider{width:100%;height:1px;margin:24px 0 26px;background:#e0e0e0}.authpage .login-btn{width:100%;height:52px;border-radius:9999px;font-size:17px;font-weight:600;cursor:pointer;color:#fff;background:#0a7a8f;border:none;transition:background .15s;letter-spacing:-.374px}.authpage .login-btn:hover{background:#086578}.authpage .login-btn:active{transform:scale(.985)}.authpage .auth-center{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:16px}.authpage .auth-panel{width:min(460px,92vw);padding:32px 30px;background:#fff;border:1px solid #e0e0e0;border-radius:18px;box-shadow:0 4px 24px #0000000f;text-align:center}.authpage .auth-panel h1{font-size:20px;font-weight:700;letter-spacing:-.3px;margin:0 0 12px}.authpage .auth-panel p{margin:0 0 18px;color:#6e6e73;line-height:1.8}.authpage .auth-btn{height:44px;padding:0 20px;border-radius:9999px;font-size:14px;font-weight:600;cursor:pointer;color:#0a7a8f;background:#0a7a8f14;border:1px solid rgba(10,122,143,.22);transition:background .15s}.authpage .auth-btn:hover{background:#0a7a8f24}.authpage .auth-loading{color:#6e6e73;font-size:14px}@media (prefers-reduced-motion: reduce){.authpage *{transition:none!important}}.subbar{display:flex;align-items:center;gap:11px;flex-wrap:wrap;padding:0 2px}.subbar .meta{font-size:12px;color:var(--ink-2);font-variant-numeric:tabular-nums}.seg.sm button{font-size:12px;padding:4px 10px;min-height:28px}.strip{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:0 2px}.stat{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;color:var(--ink-2);background:var(--canvas);border:1px solid var(--hairline);border-radius:999px;padding:5px 13px}.stat b{font-variant-numeric:tabular-nums;color:var(--ink);font-size:13.5px;font-weight:700}.stat .pip{width:8px;height:8px;border-radius:50%;flex:none}.stat.s-yoyaku{background:#4e619112;border-color:#4e619138}.stat.s-shinko{background:#b96e0812;border-color:#b96e0838}.stat.s-kanryo{background:#1a845612;border-color:#1a845638}.stat.s-error{background:#ce2f4912;border-color:#ce2f4938}.stat.s-unassigned{background:#c2410c12;border-color:#c2410c38}.strip .grow{flex:1}.strip .meta{font-size:12px;color:var(--ink-2);font-variant-numeric:tabular-nums}.tablecard{flex:1;background:var(--canvas);border:1px solid var(--hairline);border-radius:var(--r);overflow:hidden;display:flex;flex-direction:column;min-height:0}.tablewrap{flex:1;overflow:auto}table{border-collapse:separate;border-spacing:0;width:max-content;min-width:100%}thead th{position:sticky;top:0;z-index:2;background:var(--canvas-parchment);text-align:left;font-size:10.5px;font-weight:700;letter-spacing:.05em;color:var(--ink-3);padding:11px 13px;border-bottom:1px solid var(--hairline);white-space:nowrap}tbody td{padding:0 13px;border-bottom:1px solid var(--divider);font-size:13px;height:48px;vertical-align:middle;white-space:nowrap}tbody tr{cursor:pointer;transition:background .12s}tbody tr:last-child td{border-bottom:none}tbody tr:hover td{background:var(--canvas-parchment)}.rail{width:5px!important;padding:0!important;position:sticky;left:0;z-index:1}.rail i{display:block;width:5px;height:48px}.c-mono{font-family:var(--mono);font-variant-numeric:tabular-nums}.c-id{font-family:var(--mono);font-size:12px;color:var(--ink-3)}.c-bold{font-weight:600}.c-mut{color:var(--ink-2)}.assignee{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.av{width:22px;height:22px;border-radius:50%;background:#0a7a8f1a;color:var(--accent);font-size:11px;font-weight:700;display:grid;place-items:center;flex:none;border:1px solid rgba(10,122,143,.2)}.unassigned{display:inline-flex;align-items:center;gap:5px;font-size:11.5px;font-weight:700;color:var(--unassigned);background:#c2410c1a;border:1px solid rgba(194,65,12,.25);border-radius:999px;padding:3px 10px;animation:glow 2.6s ease-in-out infinite}@keyframes glow{50%{box-shadow:0 0 0 4px #c2410c14}}.status{display:inline-flex;align-items:center;gap:5px;font-size:11.5px;font-weight:600;padding:3px 10px;border-radius:999px;white-space:nowrap;border:1px solid transparent}.status .pip{width:6px;height:6px;border-radius:50%}.flag-on{color:var(--accent);font-weight:700}.flag-off{color:var(--ink-3)}tr.cancelled td{opacity:.45}tr.cancelled .c-bold{text-decoration:line-through}.empty{text-align:center;padding:64px 20px;color:var(--ink-3)}.empty b{display:block;color:var(--ink-2);font-size:14px;margin-bottom:6px}.pop{position:fixed;width:240px;max-height:min(60vh,440px);overflow:auto;border-radius:var(--r);padding:8px;z-index:120;background:var(--canvas);border:1px solid var(--hairline);box-shadow:0 8px 24px #0000001a}.pop h4{font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);padding:6px 8px 8px}.pop label{display:flex;align-items:center;gap:9px;padding:7px 8px;border-radius:var(--r-sm);font-size:13px;cursor:pointer}.pop label:hover{background:var(--canvas-parchment)}.pop input{width:15px;height:15px;accent-color:var(--accent)}.scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:#0003;opacity:0;pointer-events:none;transition:opacity .22s;z-index:40}.scrim.open{opacity:1;pointer-events:auto}.drawer{position:fixed;top:12px;right:12px;bottom:12px;width:min(460px,calc(100vw - 24px));border-radius:20px;background:var(--canvas);border:1px solid var(--hairline);box-shadow:0 20px 60px #0000001f;transform:translate(calc(100% + 16px));transition:transform .3s cubic-bezier(.32,.72,0,1);z-index:50;display:flex;flex-direction:column;overflow:hidden}.drawer.open{transform:none}.dw-head{display:flex;align-items:center;gap:10px;padding:16px 18px;border-bottom:1px solid var(--divider)}.dw-id{font-family:var(--mono);font-size:12px;color:var(--ink-3)}.dw-close{margin-left:auto;width:32px;height:32px;border:1px solid var(--hairline);background:var(--canvas-parchment);border-radius:var(--r-sm);color:var(--ink-2);font-size:18px;display:grid;place-items:center}.dw-close:hover{background:var(--divider);color:var(--ink)}.dw-body{flex:1;overflow:auto;padding:18px}.dw-sec{font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);margin:20px 0 10px;display:flex;align-items:center;gap:8px}.dw-sec:first-child{margin-top:0}.dw-sec:after{content:"";flex:1;height:1px;background:var(--divider)}.kv{display:grid;grid-template-columns:92px 1fr;gap:7px 12px;font-size:13.5px}.kv dt{color:var(--ink-3);font-size:12px;padding-top:1px}.kv dd{color:var(--ink);font-weight:500}.dw-note{border-radius:var(--r-md);padding:9px 12px;font-size:13px;margin-top:9px;background:var(--canvas-parchment);border:1px solid var(--hairline)}.dw-note .k{font-size:11px;font-weight:700;color:var(--ink-3);letter-spacing:.04em;display:block;margin-bottom:3px}.dw-note-em{background:#b96e080f;border-color:#b96e0833}.dw-note-em .k{color:var(--s-shinko)}.dw-pills{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.dw-pill{background:var(--canvas-parchment);border:1px solid var(--hairline);border-radius:var(--r-sm);padding:5px 10px;font-size:13px;font-family:var(--mono);font-variant-numeric:tabular-nums}.dw-pill b{color:var(--ink-3);font-weight:600;margin-right:3px;font-family:var(--sans)}.dw-flags{display:flex;gap:6px;margin-top:10px}.flag{font-size:11.5px;font-weight:500;padding:4px 11px;border-radius:var(--r-sm);background:var(--canvas-parchment);color:var(--ink-3);border:1px solid var(--hairline)}.flag.on{background:#0a7a8f14;color:var(--accent);border-color:#0a7a8f38;font-weight:600}.dw-tel{color:var(--accent);text-decoration:none;font-weight:600}.dw-foot{display:flex;gap:8px;padding:14px 18px;border-top:1px solid var(--divider)}.dw-foot .btn{flex:1;justify-content:center;height:44px}.btn-danger{color:var(--s-error);border-color:#ce2f4940}.btn-danger:hover{background:#ce2f490f;color:var(--s-error)}
