:root{--color-primary: #3b82f6;--color-primary-dark: #1e40af;--color-bg: #ffffff;--color-surface: #f9fafb;--color-border: #e5e7eb;--color-text-hi: #111827;--color-text-mid: #6b7280;--color-text-low: #9ca3af;--color-success: #10b981;--color-warning: #f59e0b;--color-error: #ef4444;--font-base: 18px;--font-sm: 15px;--font-lg: 22px;--font-xl: 28px;--font-family: "Pretendard", "Apple SD Gothic Neo", "Malgun Gothic", system-ui, -apple-system, sans-serif;--line-height: 1.6;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--radius: 8px;--touch-min: 44px;--sidebar-width: 260px;--header-height: 64px;--focus-ring: 0 0 0 3px rgba(59, 130, 246, .5);--color-card-new: #1e40af;--color-card-load: #059669;--color-card-result: #7c3aed;--color-card-guide: #0891b2}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:var(--font-family);font-size:var(--font-base);line-height:var(--line-height);color:var(--color-text-hi);background:var(--color-surface)}h1{font-size:var(--font-xl);margin:0 0 var(--space-4)}h2{font-size:var(--font-lg);margin:0 0 var(--space-3)}a{color:var(--color-primary)}:focus-visible{outline:none;box-shadow:var(--focus-ring);border-radius:var(--radius)}button,a,input,select{min-height:var(--touch-min)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.print-only{display:none}@media print{.no-print{display:none!important}.print-only{display:block!important}html,body,#root{height:auto;background:#fff}main{overflow:visible!important;padding:0!important;background:#fff!important}details{display:block}details>summary{display:none}@page{margin:16mm}}.ms-section{margin-bottom:var(--space-6)}.ms-section__title{font-size:var(--font-xl);margin:0 0 var(--space-2)}.ms-section__lead{margin:0 0 var(--space-4);color:var(--color-text-mid)}.ms-scope-notice{margin:0;padding:var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-left:var(--space-1) solid var(--color-warning);border-radius:var(--radius);font-weight:600;line-height:var(--line-height)}.ms-form{margin-top:var(--space-4);padding:var(--space-5);background:var(--color-bg);border:1px solid var(--color-border);border-top:var(--space-1) solid var(--color-primary);border-radius:var(--radius)}.ms-form__grid{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-4) var(--space-5)}@media (min-width: 720px){.ms-form__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.ms-field{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}.ms-field__label{font-weight:700;font-size:var(--font-sm);color:var(--color-text-mid);letter-spacing:.02em}.ms-input{width:100%;min-width:0;box-sizing:border-box;min-height:var(--touch-min);padding:var(--space-2) var(--space-3);font-family:var(--font-family);font-size:var(--font-base);color:var(--color-text-hi);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius)}.ms-input::placeholder{color:var(--color-text-low)}.ms-input:hover{border-color:var(--color-text-low)}.ms-form__hint{margin:var(--space-3) 0 0;color:var(--color-text-mid);font-size:var(--font-sm)}.ms-actions{display:flex;align-items:center;gap:var(--space-3);margin-top:var(--space-4)}.ms-btn{display:inline-flex;align-items:center;justify-content:center;min-height:var(--touch-min);padding:0 var(--space-5);font-family:var(--font-family);font-size:var(--font-base);line-height:1;border-radius:var(--radius);cursor:pointer}.ms-btn--primary{font-weight:700;color:var(--color-bg);background:var(--color-primary);border:1px solid var(--color-primary)}.ms-btn--primary:hover{background:var(--color-primary-dark);border-color:var(--color-primary-dark)}.ms-btn--ghost{padding:0 var(--space-4);color:var(--color-text-hi);background:var(--color-bg);border:1px solid var(--color-border)}.ms-btn--ghost:hover{border-color:var(--color-text-low);background:var(--color-surface)}.ms-panel{margin-top:var(--space-3);padding:var(--space-4);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius);line-height:var(--line-height)}.ms-panel--accent{border-left:var(--space-1) solid var(--color-warning)}.ms-panel--alert{border-left:var(--space-1) solid var(--color-warning);font-weight:700}.ms-panel-slot:empty{display:none}.ms-panel-slot>p{margin:var(--space-2) 0 0;color:var(--color-text-mid);font-size:var(--font-sm);line-height:var(--line-height)}.ms-panel-slot--panel>p{margin:var(--space-3) 0 0;padding:var(--space-4);font-size:var(--font-base);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius)}.ms-results{list-style:none;padding:0;margin:var(--space-3) 0 0}.ms-results__count{margin:var(--space-5) 0 0;color:var(--color-text-mid);font-size:var(--font-sm)}.ms-results__item+.ms-results__item{margin-top:var(--space-2)}.ms-option{display:block;width:100%;text-align:left;min-height:var(--touch-min);padding:var(--space-3) var(--space-4);font-family:var(--font-family);font-size:var(--font-base);color:var(--color-text-hi);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius);cursor:pointer}.ms-option:hover{border-color:var(--color-primary);background:var(--color-surface)}.ms-option--picked{border-color:var(--color-primary);border-left:var(--space-1) solid var(--color-primary);background:var(--color-surface)}.ms-option__head{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.ms-option__name{font-weight:700}.ms-option__meta{display:block;margin-top:var(--space-1);color:var(--color-text-mid);font-size:var(--font-sm);font-variant-numeric:tabular-nums}.ms-option__note{display:block;margin-top:var(--space-2);font-size:var(--font-sm);line-height:var(--line-height)}.ms-option__note-text{display:block;margin-top:var(--space-1);color:var(--color-text-mid)}.ms-option__note--muted{color:var(--color-text-mid)}.ms-badge{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-2);font-size:var(--font-sm);font-weight:700;line-height:1.2;white-space:nowrap;border-radius:var(--radius);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-mid)}.ms-badge--regulated{color:var(--color-text-hi);background:var(--color-surface);background:color-mix(in srgb,var(--color-warning) 16%,var(--color-bg));border-color:var(--color-warning);border-color:color-mix(in srgb,var(--color-warning) 55%,var(--color-bg))}.ms-badge--general{color:var(--color-text-mid);background:var(--color-surface);border-color:var(--color-border)}.ms-badge--review{color:var(--color-text-hi);background:var(--color-surface);background:color-mix(in srgb,var(--color-warning) 16%,var(--color-bg));border-color:var(--color-warning);border-color:color-mix(in srgb,var(--color-warning) 55%,var(--color-bg))}.ms-badge--class{font-weight:600;color:var(--color-primary-dark);background:var(--color-surface);background:color-mix(in srgb,var(--color-primary) 10%,var(--color-bg));border-color:var(--color-border);border-color:color-mix(in srgb,var(--color-primary) 35%,var(--color-bg))}.ms-badge__law{font-weight:700;font-size:var(--font-sm);color:var(--color-text-mid)}.ms-badges{display:flex;flex-wrap:wrap;gap:var(--space-1);margin-top:var(--space-2)}.ms-detail{margin-top:var(--space-4);padding:var(--space-5);background:var(--color-bg);border:1px solid var(--color-border);border-top:var(--space-1) solid var(--color-primary);border-radius:var(--radius)}.ms-detail__title{margin:0;font-size:var(--font-lg)}.ms-detail__meta{margin:var(--space-2) 0 0;color:var(--color-text-mid);font-size:var(--font-sm);font-variant-numeric:tabular-nums}.ms-detail__scroll{overflow-x:auto;margin-top:var(--space-5)}.ms-detail__footnote{margin:var(--space-4) 0 0;color:var(--color-text-mid);font-size:var(--font-sm);line-height:var(--line-height)}.ms-table{border-collapse:collapse;width:100%;min-width:520px}.ms-table th,.ms-table td{padding:var(--space-3);border-bottom:1px solid var(--color-border);text-align:left;vertical-align:baseline}.ms-table thead th{font-size:var(--font-sm);font-weight:600;color:var(--color-text-mid);border-bottom:2px solid var(--color-border);white-space:nowrap}.ms-table tbody tr:last-child th,.ms-table tbody tr:last-child td{border-bottom:0}.ms-table__row-head{font-weight:700;white-space:nowrap}.ms-table th.ms-table__num,.ms-table td.ms-table__num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.ms-unit{color:var(--color-text-mid);font-size:var(--font-sm);font-weight:400}.ms-table__empty{color:var(--color-text-low)}.ms-modal__overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--color-text-hi);opacity:.45}.ms-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:min(880px,calc(100vw - var(--space-6)));max-height:calc(100vh - var(--space-6));overflow-y:auto;overflow-x:hidden;background:var(--color-bg);border:1px solid var(--color-border);border-top:var(--space-1) solid var(--color-primary);border-radius:var(--radius);padding:0 var(--space-5) var(--space-5)}.ms-modal__head{position:sticky;top:0;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);margin:0 calc(-1 * var(--space-5));padding:var(--space-4) var(--space-5);background:var(--color-bg);border-bottom:1px solid var(--color-border)}.ms-modal__title{margin:0;font-size:var(--font-lg);font-weight:700}.ms-modal__close{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;min-height:var(--touch-min);padding:0 var(--space-4);font-family:var(--font-family);font-size:var(--font-base);color:var(--color-text-hi);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius);cursor:pointer}.ms-modal__close:hover{border-color:var(--color-text-low);background:var(--color-surface)}.ms-modal__notice{margin:var(--space-4) 0 0;padding:var(--space-3) var(--space-4);background:var(--color-surface);border-left:var(--space-1) solid var(--color-warning);border-radius:var(--radius);font-size:var(--font-sm);font-weight:600;line-height:var(--line-height)}.ms-inline{margin-bottom:var(--space-4)}.ms-inline__label{display:block;font-weight:700;margin-bottom:var(--space-1)}.ms-inline__status{margin:var(--space-2) 0 0;color:var(--color-text-mid);font-size:var(--font-sm)}.ms-chooser{margin-top:var(--space-3);padding:var(--space-4);background:var(--color-surface);border:1px solid var(--color-primary);border-left:var(--space-1) solid var(--color-primary);border-radius:var(--radius)}.ms-chooser__name{margin:0;font-weight:700;font-size:var(--font-lg)}.ms-chooser__note{margin:var(--space-2) 0 var(--space-3);color:var(--color-text-mid);font-size:var(--font-sm);line-height:var(--line-height)}.ms-chooser__list{border:0;margin:0;padding:0}.ms-chooser__option{display:block;width:100%;text-align:left;min-height:var(--touch-min);padding:var(--space-3) var(--space-4);font-family:var(--font-family);font-size:var(--font-base);font-variant-numeric:tabular-nums;color:var(--color-text-hi);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius);cursor:pointer}.ms-chooser__option:hover{border-color:var(--color-primary);background:var(--color-surface)}.ms-chooser__option+.ms-chooser__option{margin-top:var(--space-2)}.ms-chooser__back{display:block;width:100%;min-height:var(--touch-min);margin-top:var(--space-3);padding:var(--space-3) var(--space-4);font-family:var(--font-family);font-size:var(--font-base);color:var(--color-text-hi);text-align:center;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);cursor:pointer}.ms-chooser__back:hover{border-color:var(--color-primary)}.landing-hero{position:relative;width:100%;background:#fef9ed}.landing-hero__banner{display:block;width:100%;margin:0 auto;object-fit:cover}.landing-hero__text{padding:var(--space-6) var(--space-5);max-width:1120px;margin:0 auto}.landing-hero__title{margin:0;font-size:44px;line-height:1.1;font-weight:800;color:var(--color-primary-dark)}@media (min-width: 900px){.landing-hero__text{position:absolute;top:0;bottom:0;left:0;width:42%;max-width:none;margin:0;display:flex;flex-direction:column;justify-content:center;padding:var(--space-5) var(--space-6)}}
