*{box-sizing:border-box}html,body{min-height:100%;margin:0}button,input,textarea,select{font:inherit}a{color:inherit}:root{--font-body:"Aptos", "Segoe UI", sans-serif;--white:#fff;--surface:#f6f9ff;--surface-strong:#eaf1fb;--ink:#172033;--muted:#66748a;--blue:#1769c2;--blue-dark:#0f4f96;--green:#16835f;--green-soft:#e8f7f1;--red:#c73535;--red-dark:#9e2828;--red-soft:#fdecec;--line:#d8e2ef}body{background:var(--surface);min-height:100vh;color:var(--ink);font-family:var(--font-body)}.boot-screen,.login-layout{place-items:center;min-height:100vh;padding:24px;display:grid}.boot-screen{color:var(--muted);gap:14px}.login-card,.editor-card{border:1px solid var(--line);background:var(--white);border-radius:8px;box-shadow:0 14px 40px #1769c214}.login-card{width:min(420px,100%);padding:12px}.login-card h1,.purgatory-header h1,.editor-card h2{font-family:var(--font-body);letter-spacing:0}.login-card h1{font-size:clamp(2.5rem,7vw,5.4rem);line-height:.92}.purgatory-shell{min-height:100vh;font-size:.9rem}.purgatory-header{background:var(--blue);color:var(--white);padding:14px 20px;box-shadow:0 8px 24px #1769c22e}.header-grid{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;display:grid}.title-lockup{align-items:center;gap:10px;display:inline-flex}.header-icon{background:var(--white);border:1px solid #ffffff6b;border-radius:8px;flex:none;justify-content:center;align-items:center;width:30px;height:30px;display:inline-flex;position:relative}.header-icon:before{content:"";width:18px;height:22px;clip-path:path("M9 0 C14 7 5 10 9 17 C11 13 16 11 15 5 C21 12 22 21 13 22 C4 23 -3 15 5 6 C5 11 7 14 10 16 C7 9 12 7 9 0 Z");background:linear-gradient(#ffdf75 0%,#f25532 56%,#c73535 100%)}.header-icon:after{content:"";width:9px;height:12px;clip-path:path("M5 0 C8 5 3 6 5 11 C7 8 10 7 9 3 C13 8 13 13 7 14 C1 14 -2 9 3 3 C3 6 4 8 6 9 C4 5 7 4 5 0 Z");background:linear-gradient(#fff3a8 0%,#ff9d42 72%);position:absolute;bottom:5px}.purgatory-header h1{font-family:var(--font-body);letter-spacing:0;margin:0;font-size:1.9rem;font-weight:800;line-height:1.2}.session-card{background:#ffffff1f;border:1px solid #ffffff38;border-radius:8px;gap:10px;padding:18px;display:grid}.session-card span{color:#ffffffb8;text-transform:uppercase;letter-spacing:.12em;font-size:.82rem}.session-card strong{word-break:break-word}.workspace-container{max-width:none;padding:28px 24px 64px}.workspace-grid{grid-template-columns:minmax(240px,.4fr) minmax(620px,1.6fr);align-items:start;gap:22px;display:grid}.primary-action{--bs-btn-bg:var(--blue);--bs-btn-border-color:var(--blue);--bs-btn-hover-bg:var(--blue-dark);--bs-btn-hover-border-color:var(--blue-dark);box-shadow:none;border-radius:6px;font-size:.9rem;font-weight:700}.btn-outline-danger{--bs-btn-color:var(--red);--bs-btn-border-color:var(--red);--bs-btn-hover-bg:var(--red);--bs-btn-hover-border-color:var(--red);--bs-btn-active-bg:var(--red-dark);--bs-btn-active-border-color:var(--red-dark)}.circle-tabs{flex-wrap:wrap;gap:8px;margin-bottom:16px;display:flex}.circle-tab{border:1px solid var(--line);background:var(--white);color:var(--ink);text-align:left;border-radius:6px;align-items:center;padding:8px 12px;transition:transform .16s,box-shadow .16s,background .16s;display:inline-flex;position:relative}.circle-tab:hover,.circle-tab.active{border-color:var(--green);background:var(--green-soft);box-shadow:none;color:var(--green);transform:none}.circle-tab span{font-size:.9rem;font-weight:800}.eyebrow{color:var(--blue);letter-spacing:.14em;text-transform:uppercase;font-size:.72rem;font-weight:900}.circle-tab small{color:var(--muted);font-size:.9rem;font-weight:700}.circle-tab b{position:absolute;top:10px;right:12px}.muted{color:var(--muted)}.editor-card{min-width:0}.editor-head,.save-row,.toolbar{justify-content:space-between;align-items:center;gap:12px;display:flex}.editor-head{margin-bottom:18px}.editor-head-actions{justify-content:flex-end}.editor-head h2{font-family:var(--font-body);letter-spacing:0;margin:0;font-size:.95rem;font-weight:800;line-height:1.2}.toolbar{justify-content:flex-start;margin-bottom:14px}.toolbar .form-select{max-width:190px}.accordion-sort-row{flex-wrap:wrap;gap:14px;margin-bottom:12px;display:flex}.trial-toolbar{--trial-button-size:calc(1.5em + .75rem + 2px);flex-wrap:wrap;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.trial-submit-group{flex-direction:column;align-items:center;gap:4px;display:inline-flex}.purge-button{border-color:var(--green);color:var(--green);background:0 0}.purge-button:hover,.purge-button:focus{border-color:var(--green);background:var(--green);color:var(--white)}.purge-button:disabled{border-color:var(--green);color:var(--green);opacity:.58;background:0 0}.icon-button{width:var(--trial-button-size);height:var(--trial-button-size);justify-content:center;align-items:center;padding:0;font-size:1.05rem;font-weight:800;line-height:1;display:inline-flex}.example-link{color:var(--blue);text-underline-offset:3px;font-size:.9rem;font-weight:800;text-decoration:underline}.example-link:hover{color:var(--blue-dark)}.pagination-row{color:var(--ink);flex-wrap:wrap;align-items:center;gap:10px;margin-top:12px;font-size:.9rem;font-weight:700;display:flex}.pagination-row .form-select{width:auto;min-width:84px}.sort-button{color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit;background:0 0;border:0;align-items:center;gap:4px;padding:0;font-weight:900;display:inline-flex}.sort-button:disabled{cursor:not-allowed;opacity:.48}.sort-button span{min-width:1.1em;color:var(--blue);text-align:center}.suggestion-picker{gap:4px;min-width:260px;display:grid;position:relative}.suggestion-menu{z-index:1055;border:1px solid var(--line);background:var(--white);border-radius:8px;max-height:260px;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow:auto;box-shadow:0 14px 32px #1720331f}.suggestion-menu-up{top:auto;bottom:calc(100% + 4px);box-shadow:0 -14px 32px #1720331f}.suggestion-option{border:0;border-bottom:1px solid var(--line);width:100%;color:var(--ink);text-align:left;background:0 0;gap:3px;padding:8px 10px;display:grid}.suggestion-option:hover,.suggestion-option:focus{background:var(--green-soft)}.suggestion-option span{font-size:.9rem;font-weight:800}.suggestion-empty,.suggestion-loading{color:var(--muted);padding:10px;font-size:.78rem;display:block}.state-alert{background:var(--green-soft);color:var(--green);border-color:#16835f38;border-radius:8px}.circle-accordion{gap:10px;display:grid}.circle-accordion .accordion-item{border:1px solid var(--line);background:var(--white);border-radius:8px;overflow:hidden}.circle-accordion .accordion-button{background:var(--white);color:var(--ink);letter-spacing:0;font-size:.9rem;font-weight:800}.circle-accordion .accordion-button:not(.collapsed){background:var(--green-soft);box-shadow:none;color:var(--green)}.circle-accordion .accordion-button:focus{border-color:var(--blue);box-shadow:0 0 0 .18rem #1769c229}.circle-accordion .accordion-body{padding:12px}.circle-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.circle-detail-card{border:1px solid var(--line);background:var(--surface);border-radius:8px;gap:8px;min-width:0;padding:12px;display:grid}.circle-detail-card-wide{grid-column:1/-1}.field-label{color:var(--muted);font-size:.9rem;font-weight:800}.table-scroll{overflow:auto}.entity-table{vertical-align:middle;min-width:760px}.overflow-tooltip-target{min-width:0;max-width:100%;display:block}.overflow-tooltip-measure{visibility:hidden;white-space:pre;pointer-events:none;position:fixed;top:-10000px;left:-10000px}.overflow-tooltip-popup .tooltip-inner{overflow-wrap:anywhere;text-align:left;white-space:pre-wrap;max-width:min(70vw,520px)}.entity-table .overflow-tooltip-target .form-control,.entity-table .overflow-tooltip-target .form-select,.entity-table .overflow-tooltip-target .btn,.entity-table .overflow-tooltip-target .dropdown{max-width:100%}.anima-table{min-width:940px}.rx-otc-table{min-width:1080px}.delivery-table,.drug-table,.mnn-table{min-width:1480px}.mnn-primary-summary{flex-wrap:wrap;gap:4px;max-width:24rem;display:flex}.mnn-primary-pill{background:var(--green-soft);color:var(--green);border-radius:6px;padding:3px 6px;font-size:.78rem;font-weight:800;display:inline-flex}.mnn-primary-editor,.mnn-progress{gap:8px;display:grid}.mnn-progress{margin-bottom:12px}.mnn-primary-editor-row{grid-template-columns:minmax(240px,1fr) auto;align-items:start;gap:8px;display:grid}.qt-risk-table{min-width:1580px}.rx-otc-type-cell{width:13.5rem;min-width:13.5rem}.delivery-route-cell{width:15rem;min-width:15rem}.readonly-ingot{overflow-wrap:anywhere;min-width:14rem;max-width:24rem;display:inline-block}.delivery-detail-row td,.drug-detail-row td{background:var(--surface)}.drug-detail-grid{border:1px solid var(--line);background:var(--white);border-radius:8px;grid-template-columns:repeat(2,minmax(220px,1fr));gap:10px;padding:10px;display:grid}.drug-detail-wide{grid-column:1/-1}.drug-errors-field{gap:4px;display:grid}.drug-errors-field .form-label{margin-bottom:0}.drug-errors-content{min-height:1.5rem}.drug-trial-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.drug-trial-filter-dropdown .enum-dropdown-toggle{width:100%}.drug-trial-filter-actions{justify-content:flex-end;margin-top:10px;display:flex}.atcs-editor{gap:8px;display:grid}.atcs-editor-row{grid-template-columns:minmax(140px,1fr) auto;align-items:center;gap:8px;display:grid}.delivery-details-editor,.delivery-detail-section,.delivery-dosage-list,.delivery-dosage-editor,.delivery-subsection,.delivery-dose-card,.delivery-dose-values{gap:10px;display:grid}.delivery-details-editor{grid-template-columns:minmax(260px,360px) minmax(0,1fr);align-items:start}.delivery-detail-section,.delivery-dosage-editor,.delivery-dose-card{border:1px solid var(--line);background:var(--white);border-radius:8px;min-width:0;padding:10px}.delivery-detail-section-header,.qt-risk-detail-section-header,.delivery-dosage-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.delivery-dosage-title-group{flex-wrap:nowrap;flex:520px;align-items:center;gap:6px;min-width:0;display:flex}.delivery-dosage-toggle{flex:none;align-items:center;gap:6px;width:fit-content;max-width:100%;display:inline-flex}.delivery-dosage-editor-error{border-color:var(--red);box-shadow:inset 3px 0 0 var(--red)}.delivery-dosage-error-badge{background:var(--red-soft);color:var(--red);border-radius:6px;flex:none;padding:3px 6px;font-size:.78rem;font-weight:900}.delivery-dosage-summary{flex-wrap:wrap;flex:auto;gap:6px;min-width:0;display:flex;overflow:hidden}.delivery-dosage-summary-item{border:1px solid var(--line);background:var(--surface);min-width:0;max-width:100%;color:var(--muted);overflow-wrap:anywhere;white-space:normal;border-radius:6px;padding:3px 6px;font-size:.78rem;font-weight:800;overflow:hidden}.delivery-dosage-body{gap:10px;display:grid}.delivery-ingot-row,.delivery-apply-rule-row,.delivery-dose-value-row,.delivery-frequency-row,.delivery-two-column{align-items:start;gap:8px;display:grid}.delivery-ingot-row{grid-template-columns:minmax(220px,1fr) auto}.delivery-apply-rule-row{border:1px solid var(--line);background:var(--surface);border-radius:8px;grid-template-columns:max-content max-content minmax(180px,1fr) auto;padding:10px}.delivery-apply-rule-index{color:var(--muted);white-space:nowrap;align-self:center;font-size:.78rem;font-weight:900}.delivery-apply-rule-original,.delivery-apply-rule-original-placeholder{align-self:center}.delivery-apply-rule-original{border:1px solid var(--line);background:var(--white);color:var(--muted);border-radius:6px;padding:2px 6px;font-size:.75rem;font-weight:900}.delivery-apply-rule-original:hover,.delivery-apply-rule-original:focus-visible{border-color:var(--accent);color:var(--accent)}.delivery-apply-rule-original-placeholder{width:0}.delivery-apply-rule-original-text{overflow-wrap:anywhere;white-space:pre-wrap;max-width:min(70vw,520px);display:block}.delivery-apply-rule-formulas{gap:6px;min-width:0;display:grid}.delivery-apply-rule-formula-row{grid-template-columns:minmax(0,1fr) auto;gap:6px;display:grid}.delivery-dose-description-grid{grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr));align-items:start;gap:10px;display:grid}.delivery-dose-description-card{grid-column:span 2}.delivery-frequency-card{grid-column:span 1}.delivery-dose-value-row{grid-template-columns:minmax(0,1.4fr) minmax(0,.9fr) minmax(72px,.45fr) auto}.delivery-two-column{grid-template-columns:repeat(2,minmax(0,1fr))}.delivery-frequency-card{align-self:stretch}.delivery-frequency-row{grid-template-columns:1fr}.delivery-frequency-period-controls{grid-template-columns:minmax(84px,.7fr) minmax(96px,1fr);gap:8px;display:grid}.delivery-dose-card input,.delivery-dose-card select,.delivery-dose-card textarea,.delivery-dose-card .suggestion-picker{min-width:0}.delivery-dose-values>.btn{justify-self:start}.delivery-detail-section .form-label,.delivery-dosage-editor .form-label,.qt-risk-detail-grid .form-label,.liver-tox-detail-grid .form-label,.key-points-panel .form-label{color:var(--muted);font-size:.82rem;font-weight:900}.qt-risk-detail-grid,.liver-tox-detail-grid{border:1px solid var(--line);background:var(--surface);border-radius:8px;grid-template-columns:repeat(2,minmax(220px,1fr));gap:10px;padding:10px;display:grid}.key-points-panel{border:1px solid var(--line);background:var(--panel);border-radius:8px;grid-column:1/-1;grid-template-columns:repeat(2,minmax(220px,1fr));gap:10px;padding:10px;display:grid}.key-points-panel h3{color:var(--text);grid-column:1/-1;margin:0;font-size:.95rem;font-weight:900}.readonly-cell-text{text-overflow:ellipsis;vertical-align:middle;white-space:nowrap;max-width:14rem;display:inline-block;overflow:hidden}.muted-inline{color:var(--muted);font-size:.86rem;font-weight:700}.filter-action-header-cell{width:7rem;min-width:7rem}.entity-table th{color:var(--muted);letter-spacing:0;text-transform:uppercase;font-size:.9rem}.entity-table td,.entity-table input,.entity-table select,.entity-table .btn,.circle-detail-card input,.circle-detail-card select,.circle-detail-card strong,.circle-accordion .accordion-button,.state-alert,.empty-cell,.error-text,.row-selector{font-size:.9rem}.entity-table td,.entity-table th{border-color:var(--line)}.filter-header-row th{background:var(--surface);color:var(--ink);text-transform:none;vertical-align:top;padding-top:6px}.column-filter-actions{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.enum-dropdown-toggle{text-align:left;justify-content:flex-start;align-items:center;gap:6px;min-width:8.5rem;max-width:100%;display:inline-flex}.enum-dropdown-toggle:after{flex:none;margin-left:auto}.enum-dropdown-label{color:var(--muted);flex:none;font-weight:900}.enum-dropdown-value{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:800;overflow:hidden}.enum-dropdown-menu{z-index:1055;min-width:14rem;max-height:260px;padding:8px 10px;overflow:auto}.enum-dropdown-check{margin:4px 0}.delivery-enum-dropdown .enum-dropdown-toggle{min-width:12rem}.delivery-enum-menu{max-height:320px}.enum-status-select{opacity:1;border-radius:6px;min-width:7.5rem;font-size:.85rem;font-weight:800}.enum-status-select:disabled{opacity:1}.filter-header-row input,.filter-header-row label,.filter-header-row .form-check-label,.filter-header-row .btn{letter-spacing:0;text-transform:none;font-size:.82rem}.selected-row td{background:var(--green-soft)}.deleted-row{opacity:.58}.deleted-row input,.deleted-row select{text-decoration:line-through}.row-selector{color:var(--blue);background:0 0;border:0;margin-bottom:6px;padding:0;font-weight:800;display:inline-flex}.warning-pill{background:var(--red-soft);color:var(--red-dark);border-radius:6px;margin:2px;padding:4px 8px;font-size:.9rem;display:inline-flex}.status-ready{background:var(--green-soft);color:var(--green)}.status-error{background:var(--red-soft);color:var(--red-dark)}.anima-name-error-cell{font-weight:800;background:var(--red-soft)!important;color:var(--red-dark)!important}.trial-file-name{color:var(--muted);margin:12px 0 0;font-size:.9rem}.empty-cell{text-align:center;color:var(--muted)!important;padding:28px!important}.save-row{justify-content:flex-start;margin-top:18px}.action-row{flex-wrap:wrap}.action-row .btn{font-size:.9rem}.error-text{color:var(--red);font-weight:700}.error-list{margin:0;padding-left:18px}@media (max-width:1100px){.workspace-grid,.header-grid{grid-template-columns:1fr}}@media (max-width:760px){.toolbar,.editor-head,.save-row{flex-direction:column;align-items:stretch}.toolbar .form-select{max-width:none}.delivery-details-editor,.delivery-dose-description-grid,.delivery-dose-value-row,.delivery-apply-rule-row,.delivery-frequency-row,.delivery-frequency-period-controls,.atcs-editor-row,.drug-detail-grid,.drug-trial-filter-grid,.mnn-primary-editor-row,.qt-risk-detail-grid,.liver-tox-detail-grid,.key-points-panel{grid-template-columns:1fr}.delivery-dose-description-card{grid-column:auto}}
