:root{color-scheme:light;--navy:#143A52;--pale:#F1F8FB;--ink:#1F2937;--muted:#475569;--line:#8597A2;--error:#9C2525;--success:#176039;font-family:-apple-system,BlinkMacSystemFont,"Hiragino Sans","Yu Gothic",Meiryo,sans-serif}
*{box-sizing:border-box}html{scroll-padding-top:116px}body{margin:0;min-width:280px;min-height:100svh;background:#fff;color:var(--ink);font-size:16px;line-height:1.6;line-break:strict;font-variant-numeric:tabular-nums}button,input,textarea,select{font:inherit}button{cursor:pointer}a{color:var(--navy)}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--navy);outline-offset:3px}button:active{transform:translateY(1px)}[hidden]{display:none!important}
.notice{position:sticky;top:0;z-index:5;margin:0;padding:8px max(16px,env(safe-area-inset-left)) 8px max(16px,env(safe-area-inset-right));background:var(--navy);color:#fff;font-size:14px;font-weight:600;text-align:center}.shell{max-width:1260px;margin:auto;padding:0 20px 48px}.appbar{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:64px;border-bottom:1px solid var(--line)}.brand{color:var(--navy);font-size:20px;font-weight:700}.appbar nav{display:flex;gap:8px;flex-wrap:wrap}.nav-link,.back{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:8px 12px;border:0;border-radius:8px;background:transparent;color:var(--navy);font-size:16px;font-weight:700;text-decoration:none}.nav-link[aria-current=page]{background:var(--pale)}.nav-link:hover,.back:hover{text-decoration:underline}
h1,h2,h3,p{margin-top:0}h1{color:var(--navy);font-size:24px;line-height:1.35;font-weight:700;overflow-wrap:anywhere}h2{color:var(--navy);font-size:20px;line-height:1.35;font-weight:700}h3{color:var(--navy);font-size:18px;line-height:1.4;font-weight:700}.hint,.meta,.source,.count{color:var(--muted);font-size:14px;line-height:1.5}.intro{padding:24px 0 16px}.intro h1{margin-bottom:10px}.lead{max-width:34em;margin-bottom:0}.source{margin-bottom:12px;font-weight:600}.message{margin:16px 0;padding:12px 16px;border-left:4px solid var(--navy);background:var(--pale);font-size:16px}.message[data-tone=error]{border-color:var(--error);background:#fff3f3;color:#6d1818}.message[data-tone=success]{border-color:var(--success);background:#effaf3;color:#11492b}
.primary,.secondary,.text-button,.sample-button{min-height:52px;padding:10px 16px;border-radius:8px;font-size:16px;font-weight:700;line-height:1.4}.primary{border:2px solid var(--navy);background:var(--navy);color:#fff}.primary:hover{background:#24516b}.secondary,.sample-button{border:2px solid var(--navy);background:#fff;color:var(--navy)}.secondary:hover,.sample-button:hover{background:var(--pale)}.text-button{min-width:48px;border:0;background:transparent;color:var(--navy)}.text-button:hover{text-decoration:underline}.primary:disabled,.secondary:disabled{cursor:wait}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.actions>*{min-width:180px}.field{min-width:0}.field+.field{margin-top:20px}.field label,.field-label{display:block;margin-bottom:8px;font-size:16px;font-weight:700}.field input,.field textarea,.field select,.filter input,.filter select,.note-form textarea{display:block;width:100%;min-height:52px;padding:10px 12px;border:2px solid #657985;border-radius:8px;background:#fff;color:var(--ink);font-size:18px;line-height:1.5}.field textarea,.note-form textarea{min-height:112px;resize:vertical}.field input::placeholder,.field textarea::placeholder{color:#526171}.field-error{margin:8px 0 0;color:var(--error);font-size:16px}.form-group{margin:0;padding:0;border:0}.form-group+.form-group{margin-top:32px}.form-group legend{width:100%;margin-bottom:20px;padding-bottom:8px;border-bottom:2px solid var(--navy);color:var(--navy);font-size:20px;font-weight:700}
.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;margin:4px 0 0;padding:0;list-style:none}.steps li{min-width:0;padding:7px 3px 10px;border-top:4px solid var(--line);color:var(--muted);font-size:14px;font-weight:600;text-align:center;line-height:1.35}.steps li.current{border-color:var(--navy);color:var(--navy)}.steps li.done{border-color:#557b90;color:var(--ink)}.route{margin-top:30px}.route-vertical{margin:0;padding:0;list-style:none}.route-vertical li{position:relative;display:grid;grid-template-columns:32px minmax(0,1fr);gap:14px;min-height:84px}.route-vertical li:not(:last-child)::before{content:"";position:absolute;top:32px;bottom:0;left:15px;width:2px;background:#a9bdc8}.route-vertical .number{position:relative;z-index:1;display:grid;place-items:center;width:32px;height:32px;border:2px solid var(--navy);border-radius:50%;background:#fff;color:var(--navy);font-size:16px;font-weight:700}.route-vertical h3{margin:0 0 2px}.route-vertical p{margin:0}
.intake-shell{max-width:480px}.intake-shell .appbar{border-bottom:0}.intake-shell .actions{display:grid}.intake-shell .actions>*{width:100%}.intake-shell .intro{padding-top:24px}.sample-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px}.sample-choice{min-height:140px;padding:12px;border:2px solid var(--line);border-radius:8px;background:#fff;color:var(--navy);text-align:center;font-size:14px;font-weight:700}.sample-choice[aria-pressed=true]{border-color:var(--navy);background:var(--pale)}.sample-choice svg{display:block;width:64px;height:64px;margin:0 auto 8px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.review{margin:4px 0 0;border-top:2px solid var(--navy)}.review-row,.detail-row{display:grid;grid-template-columns:116px minmax(0,1fr);gap:12px;padding:14px 0;border-bottom:1px solid var(--line)}.review dt,.detail-row dt{font-weight:700}.review dd,.detail-row dd{min-width:0;margin:0;white-space:pre-wrap;overflow-wrap:anywhere}
.admin-head{display:flex;align-items:end;justify-content:space-between;gap:16px;flex-wrap:wrap}.admin-head .intro{padding-bottom:8px}.tool-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:8px 0 24px}.layout-choices{display:flex;gap:8px;flex-wrap:wrap}.layout-choices button[aria-pressed=true]{background:var(--navy);color:#fff}.filter-grid{display:grid;grid-template-columns:minmax(180px,2fr) repeat(2,minmax(160px,1fr));gap:16px;align-items:end;margin-bottom:16px}.filter label{display:block;margin-bottom:8px;font-weight:700}.filter input,.filter select{font-size:16px}.list-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;border-bottom:2px solid var(--navy)}.list-head h2{margin:0 0 12px}.customer-list{margin:0;padding:0;list-style:none}.customer-row{display:grid;grid-template-columns:minmax(180px,1.15fr) minmax(165px,1.4fr) minmax(125px,.8fr) 128px;gap:16px;align-items:center;min-height:88px;padding:12px 0;border-bottom:1px solid var(--line)}.customer-row strong{display:block;font-size:16px;overflow-wrap:anywhere}.customer-row .meta{display:block;overflow-wrap:anywhere}.customer-row .secondary{width:100%;min-width:0;min-height:48px;padding-inline:12px;white-space:nowrap}.origin{display:flex;flex-wrap:wrap;gap:0 8px;min-width:0}.origin-part{flex:0 1 auto;min-width:0;max-width:100%;overflow-wrap:anywhere}.origin-part:not(.origin-agency)::before{content:"／";margin-right:8px}.origin-agency{white-space:normal;overflow-wrap:anywhere}.status{display:inline-block;padding:4px 10px;border:1px solid var(--navy);border-radius:999px;color:var(--navy);font-size:14px;font-weight:700}.admin-main[data-layout=split][data-selected=true]{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.9fr);gap:32px;align-items:start}.admin-main[data-layout=split][data-selected=true] .customer-row{grid-template-columns:minmax(0,1fr) minmax(128px,auto);gap:8px 12px}.admin-main[data-layout=split][data-selected=true] .customer-row .row-action{grid-column:2;grid-row:1}.admin-main[data-layout=split][data-selected=true] .customer-row .origin{grid-column:1/-1;grid-row:2}.admin-main[data-layout=split][data-selected=true] .customer-row .status-cell{grid-column:1/-1;grid-row:3}.admin-main[data-layout=split] .detail-panel{position:sticky;top:90px;max-height:calc(100dvh - 110px);overflow:auto;padding-right:4px}.detail-panel{min-width:0}.detail-head{display:flex;align-items:start;justify-content:space-between;gap:12px;flex-wrap:wrap}.detail-section{margin-top:24px}.detail-section h2{margin-bottom:10px;padding-bottom:8px;border-bottom:2px solid var(--navy)}.intake-record+.intake-record{margin-top:24px;padding-top:16px;border-top:1px solid var(--line)}.activity-list{margin:0;padding:0;list-style:none}.activity-list li{padding:12px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.activity-list time{display:block;color:var(--muted);font-size:14px}.status-form,.note-form{display:grid;gap:12px}.status-form label,.note-form label{font-weight:700}.status-form select{min-height:52px;padding:10px 12px;border:2px solid #657985;border-radius:8px;background:#fff;color:var(--ink);font-size:18px}.referral-list{margin:24px 0;padding:0;list-style:none}.referral-list li{padding:20px 0;border-top:1px solid var(--line)}.referral-list h2{margin:0 0 8px}.referral-list .link-line{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:12px}.referral-list a{min-height:48px;display:inline-flex;align-items:center;padding:8px 12px;border:2px solid var(--navy);border-radius:8px;font-weight:700;text-decoration:none}.referral-list code{overflow-wrap:anywhere;font-family:inherit;font-size:14px}
@media(max-width:899px){.admin-main[data-layout=split][data-selected=true]{display:block}.admin-main[data-layout=split][data-selected=true] .list-panel{display:none}.admin-main[data-layout=split] .detail-panel{position:static;max-height:none;overflow:visible}.customer-row{grid-template-columns:minmax(0,1fr) auto;gap:8px 12px}.customer-row .origin{grid-column:1/-1}.customer-row .status-cell{grid-column:1}.customer-row .row-action{grid-column:2;grid-row:1}.customer-row .row-action button{min-width:96px}.filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.filter:first-child{grid-column:1/-1}}
@media(max-width:599px){.shell{padding-left:20px;padding-right:20px}.appbar{align-items:start;flex-direction:column;padding:10px 0}.appbar nav{width:100%}.nav-link{flex:1}.actions>*{width:100%}.filter-grid{grid-template-columns:1fr}.filter:first-child{grid-column:auto}.customer-row,.admin-main[data-layout=split][data-selected=true] .customer-row{grid-template-columns:minmax(0,1fr)}.customer-row .origin,.customer-row .status-cell,.customer-row .row-action,.admin-main[data-layout=split][data-selected=true] .customer-row .origin,.admin-main[data-layout=split][data-selected=true] .customer-row .status-cell,.admin-main[data-layout=split][data-selected=true] .customer-row .row-action{grid-column:1;grid-row:auto}.customer-row .row-action button{width:100%}.detail-row,.review-row{grid-template-columns:100px minmax(0,1fr)}.admin-head{align-items:start}.tool-row{align-items:stretch}.layout-choices{width:100%}.layout-choices button{flex:1}.sample-options{gap:8px}}
@media(max-width:359px){.shell{padding-left:16px;padding-right:16px}.detail-row,.review-row{grid-template-columns:88px minmax(0,1fr);gap:8px}.customer-row .row-action button{min-width:80px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
/* Agency foundation: keep registries in a list/editor pair on wide screens. */
.appbar nav{min-width:0}.nav-link{white-space:nowrap}.attention-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 20px}.attention-button{display:inline-flex;align-items:center;justify-content:space-between;gap:14px;min-height:52px;padding:8px 14px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);font-size:16px;font-weight:600}.attention-button strong{color:var(--navy);font-size:20px;font-variant-numeric:tabular-nums}.attention-button[aria-pressed=true]{border:2px solid var(--navy);background:var(--pale)}.attention-row .hint{margin-left:auto}.filter-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.filter{min-width:0}.filter select,.filter input{width:100%}.status-cell .meta{display:block;margin-top:4px}.edit-form{display:grid;gap:16px;max-width:480px}.edit-form .field+.field{margin-top:0}.edit-form .primary{margin-top:8px}.registry-main{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.95fr);gap:32px;align-items:start;margin-top:16px}.registry-list-panel,.registry-editor{min-width:0}.registry-editor{position:sticky;top:90px;max-height:calc(100dvh - 110px);overflow:auto;padding-right:4px}.registry-editor h2{margin:4px 0 16px}.registry-list{margin:0;padding:0;list-style:none}.registry-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;padding:16px 0;border-bottom:1px solid var(--line)}.registry-row strong,.registry-row .meta{display:block;overflow-wrap:anywhere}.registry-row .status{margin-top:6px}.registry-row button{min-width:112px}.registry-filter{max-width:360px;margin-top:8px}.registry-filter label{display:block;margin-bottom:8px;font-weight:700}.registry-filter select{min-height:52px;padding:10px 12px;border:2px solid #657985;border-radius:8px;background:#fff;font-size:16px}.referral-form{grid-template-columns:repeat(3,minmax(0,1fr)) auto;max-width:none;align-items:end;margin:16px 0 32px}.referral-form .primary{margin:0}.referral-list code{display:block;min-width:0;word-break:break-all}.referral-list h2{overflow-wrap:anywhere}.notice{line-height:1.45}
@media(max-width:1199px){.filter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.referral-form{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:899px){.registry-main{display:block}.registry-main:has(.registry-editor:not([hidden])) .registry-list-panel{display:none}.registry-editor{position:static;max-height:none;overflow:visible;padding:0}.registry-editor:not([hidden]){max-width:480px}.filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.attention-row .hint{width:100%;margin-left:0}}
@media(max-width:599px){.appbar nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;gap:4px}.nav-link{min-width:0;white-space:normal;text-align:center}.attention-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.attention-button{min-width:0;padding:8px 10px;gap:8px;font-size:15px}.attention-row .hint{grid-column:1/-1}.filter-grid,.referral-form{grid-template-columns:1fr}.registry-row{grid-template-columns:minmax(0,1fr)}.registry-row button{width:100%}.registry-filter{max-width:none}.edit-form{max-width:none}.referral-list .link-line{display:block}.referral-list a{width:100%;justify-content:center}.referral-list code{margin-top:12px}}
