:root{font-family:Inter,PingFang SC,Microsoft YaHei,system-ui,sans-serif;color:#1f2933;background:#f7f8f5}*{box-sizing:border-box}body{margin:0}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:24px;background:#f7f8f5}.auth-card{width:min(420px,100%);display:grid;gap:18px;background:#fff;border:1px solid #e2e5df;border-radius:8px;padding:28px;box-shadow:0 18px 45px #1f293314}.auth-card p{color:#62716f;margin-top:8px}.auth-page{min-height:100vh;display:grid;place-items:center;padding:24px;background:linear-gradient(135deg,rgba(47,125,109,.08),transparent 38%),#f7f8f5}.auth-page-card{width:min(460px,100%);display:grid;gap:20px;background:#fff;border:1px solid #e2e5df;border-radius:8px;padding:28px;box-shadow:0 18px 45px #1f293314}.auth-page-copy{display:grid;gap:8px}.auth-page-copy h1{font-size:30px}.auth-page-copy p{color:#62716f;line-height:1.7}.auth-back-button{justify-self:start}.auth-hint{font-size:13px}.auth-notice{color:#236b5b;background:#edf8f2;border:1px solid #cfe7dc;border-radius:8px;padding:10px 12px;font-size:13px;font-weight:700}button,input,select{font:inherit}.landing-shell{min-height:100vh;overflow-x:hidden;background:#f4f6f3;color:#1f2933}.landing-nav{min-height:78px;margin:0 auto;padding:14px 24px;display:flex;align-items:center;justify-content:space-between;gap:24px;background:#fff}.landing-brand{min-width:0;flex:0 0 auto;display:flex;align-items:center;gap:12px;color:#1f2933;text-decoration:none}.landing-brand-mark{width:42px;height:42px;flex:0 0 42px;display:block;border-radius:8px;object-fit:cover}.landing-brand-copy{min-width:0;display:grid;gap:2px}.landing-brand strong{font-size:18px;font-weight:900}.landing-brand small{color:#697672;font-size:12px}.landing-nav-links{min-width:0;display:flex;align-items:center;justify-content:flex-end;gap:4px;flex-wrap:nowrap}.landing-nav-links a,.landing-nav-link,.landing-footer-link{flex:0 0 auto;min-height:36px;padding:8px 10px;border:0;background:transparent;color:#485854;font-size:16px;font-weight:800;white-space:nowrap;text-decoration:none}.landing-nav-links a{display:inline-flex;align-items:center}.landing-nav-links a:hover,.landing-nav-link:hover,.landing-footer-link:hover{color:#1f6f5e;background:#eef5f1}.landing-admin-button{min-height:38px;margin-left:6px;padding:9px 14px;background:#1f6f5e}.landing-hero{position:relative;isolation:isolate;min-height:650px;margin:0 auto;padding:76px max(32px,calc((100% - 1160px)/2)) 28px;display:grid;grid-template-rows:1fr auto;gap:56px;align-items:center;background-image:url(/landing-hero-school-office.webp);background-position:center;background-size:cover}.landing-hero:before{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;content:"";background:#142a2694}.landing-hero-copy{width:min(680px,100%);display:grid;gap:18px;color:#fff}.landing-hero-kicker,.landing-section-heading>span,.landing-capabilities-intro>span,.landing-product-copy>span,.landing-cta>div>span{color:#f4c763;font-size:13px;font-weight:900}.landing-hero-copy h1{max-width:680px;color:#fff;font-size:56px;line-height:1.08;letter-spacing:0}.landing-hero-lead{max-width:650px;color:#fff;font-size:26px;font-weight:850;line-height:1.45}.landing-hero-description{max-width:610px;color:#ffffffd6;font-size:16px;line-height:1.75}.landing-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.landing-primary-action{min-height:46px;padding:12px 20px;background:#f0b84b;color:#24332f}.landing-quiet-action{min-height:46px;padding:12px 20px;border:1px solid rgba(255,255,255,.5);background:#ffffff1f;color:#fff}.landing-hero-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid rgba(255,255,255,.3);background:#122722b8}.landing-hero-summary>div{min-width:0;padding:18px 20px;display:flex;align-items:baseline;gap:10px;border-right:1px solid rgba(255,255,255,.18)}.landing-hero-summary>div:last-child{border-right:0}.landing-hero-summary strong{color:#f4c763;font-size:30px}.landing-hero-summary span{color:#ffffffdb;font-size:13px;line-height:1.5}.landing-workflow-band{padding:76px max(24px,calc((100% - 1160px)/2)) 70px;background:#fff}.landing-section-heading{max-width:760px;display:grid;gap:12px}.landing-section-heading>span,.landing-capabilities-intro>span{color:#1f6f5e}.landing-section-heading h2,.landing-capabilities-intro h2,.landing-product-copy h2,.landing-cta h2{font-size:36px;line-height:1.25}.landing-section-heading p,.landing-capabilities-intro p,.landing-capability-copy p,.landing-product-copy p,.landing-cta p,.info-modal-body p{color:#62716f;line-height:1.75}.landing-workflow-list{margin:42px 0 0;padding:0;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));list-style:none}.landing-workflow-list li{position:relative;min-width:0;padding:18px 14px 0 0;display:grid;gap:14px;border-top:2px solid #d8dfdb}.landing-workflow-list li:before{position:absolute;top:-6px;left:0;width:10px;height:10px;border:2px solid #ffffff;border-radius:50%;background:#1f6f5e;box-shadow:0 0 0 1px #1f6f5e;content:""}.landing-workflow-list>li>span{color:#9b6b20;font-size:12px;font-weight:900}.landing-workflow-list div{min-width:0;display:grid;gap:6px}.landing-workflow-list strong{font-size:15px}.landing-workflow-list small{color:#6a7774;font-size:12px;line-height:1.55}.landing-capabilities{max-width:1240px;margin:0 auto;padding:86px 40px;display:grid;grid-template-columns:minmax(260px,.72fr) minmax(0,1.5fr);gap:72px;align-items:start}.landing-capabilities-intro{position:sticky;top:26px;display:grid;gap:14px}.landing-capabilities-intro button{justify-self:start;margin-top:8px}.landing-capability-list{border-top:1px solid #cfd8d3}.landing-capability-row{min-width:0;padding:30px 0;display:grid;grid-template-columns:44px minmax(0,1.2fr) minmax(180px,.72fr);gap:24px;align-items:start;border-bottom:1px solid #cfd8d3}.landing-capability-index{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:#f0b84b;color:#24332f;font-size:12px;font-weight:900}.landing-capability-copy{min-width:0;display:grid;gap:9px}.landing-capability-copy small{color:#1f6f5e;font-weight:900}.landing-capability-copy h3{margin:0;font-size:22px;line-height:1.35}.landing-capability-row ul{margin:2px 0 0;padding:0;display:grid;gap:8px;list-style:none}.landing-capability-row li{position:relative;padding-left:16px;color:#43524f;font-size:13px;font-weight:800}.landing-capability-row li:before{position:absolute;top:8px;left:0;width:6px;height:6px;border-radius:50%;background:#d9584c;content:""}.landing-product-band{padding:70px max(24px,calc((100% - 1160px)/2));display:grid;grid-template-columns:minmax(0,.9fr) minmax(420px,1.1fr);gap:70px;align-items:center;background:#173e35;color:#fff}.landing-product-copy{display:grid;gap:14px}.landing-product-copy p{color:#ffffffbf}.landing-product-copy .btn-secondary{justify-self:start;margin-top:8px;border-color:#fff6;background:transparent;color:#fff}.landing-product-preview{display:grid;gap:18px;border-radius:8px;padding:24px;background:#fff;color:#20302c;box-shadow:0 24px 60px #0003}.landing-product-preview-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.landing-product-preview-head>div{display:grid;gap:4px}.landing-product-preview-head small{color:#1f6f5e;font-weight:900}.landing-product-preview-head strong{font-size:20px}.landing-product-preview-head>span{color:#6b7774;font-size:12px;font-weight:800}.landing-readiness-bar{height:8px;overflow:hidden;border-radius:999px;background:#e5ebe7}.landing-readiness-bar i{width:92%;height:100%;display:block;background:#2f8a76}.landing-check-list{border-top:1px solid #dce3df}.landing-check-list>div{padding:14px 0;display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid #dce3df}.landing-check-list span{color:#52615d}.landing-check-list strong{color:#1f6f5e;font-size:13px}.landing-product-preview>p{padding:12px 14px;border-left:3px solid #d9584c;background:#f7f4ed;color:#475551;font-size:13px;line-height:1.6}.landing-cta{margin:0;padding:64px max(24px,calc((100% - 1160px)/2));display:flex;align-items:center;justify-content:space-between;gap:36px;background:#f0b84b;color:#24332f}.landing-cta>div:first-child{display:grid;gap:10px}.landing-cta>div>span{color:#7c5315}.landing-cta p{color:#5c4b2d}.landing-cta button{background:#233d36}.landing-cta .btn-secondary{border-color:#233d3652;background:transparent;color:#233d36}.landing-footer{min-height:100px;max-width:1240px;margin:0 auto;padding:26px 24px;display:flex;align-items:center;justify-content:space-between;gap:24px;background:#f4f6f3}.landing-footer>div:first-child{display:grid;gap:4px}.landing-footer span{color:#6b7774;font-size:12px}.landing-footer>div:last-child{display:flex;align-items:center;gap:4px}.landing-modal-mask{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:grid;place-items:center;padding:20px;background:#23323c6b}.info-modal-panel{width:min(560px,100%);display:grid;gap:18px;background:#fff;border:1px solid #e2e5df;border-radius:8px;padding:22px;box-shadow:0 24px 68px #1f29332e}.info-modal-panel>.modal-header{padding-left:0;padding-right:0}.auth-form{display:grid;gap:14px}.auth-form label{display:grid;gap:8px;font-size:13px;font-weight:800;color:#31423d}.auth-form input{width:100%}.password-requirement{margin:-6px 0 0;color:#60716b;font-size:12px;line-height:1.6}.auth-form-links{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.auth-form-links .btn-link{justify-self:auto}.auth-email-verification{display:grid;gap:16px}.auth-verification-status{display:grid;gap:7px;padding:16px;border:1px solid #cfe7dc;border-radius:8px;background:#f1f9f5}.auth-verification-status strong{color:#31423d;font-size:13px}.auth-verification-status span{min-width:0;overflow-wrap:anywhere;color:#236b5b;font-size:17px;font-weight:900}.auth-verification-status p{margin:0;color:#60716b;font-size:13px;line-height:1.7}.auth-verification-email{display:grid;gap:8px;color:#31423d;font-size:13px;font-weight:800}.auth-verification-email input{width:100%}.auth-verification-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.auth-mailbox-link{display:inline-flex;align-items:center;justify-content:center;min-height:42px;text-decoration:none}.btn-link{color:#2f7d6d;background:transparent;border:0;padding:4px;justify-self:center}.btn-link:hover{background:#edf8f2}.info-modal-body{display:grid;gap:16px;line-height:1.8}@media (max-width: 520px){.auth-verification-actions{grid-template-columns:1fr}}.contact-form-intro{margin:0;color:#60716b}.contact-inquiry-form{display:grid;gap:16px}.contact-inquiry-form fieldset{min-width:0;margin:0;padding:0;border:0}.contact-inquiry-form legend,.contact-inquiry-form label{display:grid;gap:8px;width:100%;color:#31423d;font-size:13px;font-weight:800}.contact-type-switch{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-top:8px;padding:4px;background:#f1f5f2;border:1px solid #dce5df;border-radius:8px}.contact-type-switch button{color:#53635e;background:transparent;border-color:transparent}.contact-type-switch button.active{color:#fff;background:#2f7d6d;border-color:#2f7d6d}.contact-textarea-shell{position:relative;overflow:hidden;background:#f8faf8;border:1px solid #ccd8d1;border-radius:8px;transition:border-color .16s ease,box-shadow .16s ease,background-color .16s ease}.contact-textarea-shell:focus-within{background:#fff;border-color:#2f7d6d;box-shadow:0 0 0 3px #2f7d6d1f}.contact-inquiry-form .contact-textarea-shell textarea{width:100%;min-height:148px;padding:14px 16px 34px;resize:vertical;color:#23323c;background:transparent;border:0;border-radius:0;line-height:1.65}.contact-inquiry-form .contact-textarea-shell textarea:focus{outline:none;box-shadow:none}.contact-inquiry-form .contact-textarea-shell textarea::placeholder{color:#87958f}.contact-textarea-shell .contact-character-count{position:absolute;right:12px;bottom:10px;padding-left:12px;color:#718079;background:linear-gradient(90deg,#f8faf800,#f8faf8 28%);pointer-events:none}.contact-textarea-shell:focus-within .contact-character-count{background:linear-gradient(90deg,#fff0,#fff 28%)}.contact-character-count{justify-self:end;color:#788781;font-size:12px;font-weight:500;line-height:1}.field-optional{color:#788781;font-size:12px;font-weight:500}.contact-form-actions{display:flex;justify-content:flex-end;gap:10px}.shell{min-height:100vh;display:grid;grid-template-columns:232px 1fr}.sidebar{background:#23323c;color:#f8fbff;padding:28px 18px;display:flex;flex-direction:column;position:sticky;top:0;align-self:start;height:100vh;max-height:100vh;overflow:hidden;box-sizing:border-box}.brand{font-size:24px;font-weight:800;margin-bottom:32px}nav{display:grid;gap:8px;align-content:start;flex:1;min-height:0;overflow-y:auto;padding-right:2px}nav button{text-align:left;border:0;background:transparent;color:#d2ddd9;padding:10px 12px;border-radius:8px;font-weight:800}nav button:hover,nav button.active{color:#fff;background:#2f7d6d}nav button:disabled{color:#80908b;background:transparent;cursor:not-allowed}.sidebar-footer{flex-shrink:0;margin-top:18px;padding-top:18px;border-top:1px solid rgba(255,255,255,.08)}.sidebar-profile-button{width:100%;text-align:left;border:0;background:transparent;color:#d2ddd9;padding:10px 12px}.sidebar-profile-button:hover,.sidebar-profile-button.active{color:#fff;background:#2f7d6d}.workspace{padding:32px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:24px}.user-bar{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap}.user-org{color:#263a34;font-size:13px;font-weight:900;background:#f0f4ef;padding:5px 11px;border-radius:6px}.user-email{color:#7a8782;font-size:12px;font-weight:600;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-email-button{border:0;background:transparent;padding:4px 0;min-height:0;text-align:right}.user-email-button:hover{color:#2f7d6d;background:transparent;text-decoration:underline}.sign-out-button{min-height:32px;padding:0 12px;font-size:12px;white-space:nowrap}h1,h2,p{margin:0}h1{font-size:30px;line-height:1.2}.topbar p{color:#62716f;margin-top:8px}button{border:0;border-radius:8px;background:#2f7d6d;color:#fff;padding:10px 16px;cursor:pointer;font-weight:700}button:disabled{opacity:.56;cursor:progress}.context-grid,.panel-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.context-grid{grid-template-columns:repeat(2,minmax(280px,1fr));align-items:start}.context-field{display:grid;gap:10px;min-width:0}.context-actions{display:flex;flex-wrap:wrap;gap:8px}.context-editor{display:grid;grid-template-columns:minmax(260px,1fr) auto;align-items:end;gap:14px;margin-top:14px;padding:14px;border:1px solid #dde3dc;border-radius:8px;background:#fbfcfa}.context-editor header{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;gap:12px}.context-editor strong{color:#263a34}.project-context-strip{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 18px;padding:12px 14px;border:1px solid #dde3dc;border-radius:8px;background:#fbfcfa}.project-context-strip div{display:grid;gap:3px}.project-context-strip span{color:#6d7875;font-size:12px;font-weight:800}.project-context-strip strong{color:#263a34}label{display:grid;gap:8px;color:#53615f;font-size:14px;font-weight:700}input,select{border:1px solid #d9ded9;border-radius:8px;padding:10px 12px;color:#1f2933;background:#fff;min-width:0}.actions{display:flex;gap:12px;margin:24px 0;flex-wrap:wrap}.run-control-strip{display:grid;grid-template-columns:auto minmax(180px,1fr) auto;align-items:center;gap:14px;margin:24px 0;border:1px solid #d7e8e0;border-radius:8px;background:#f7fbf8;padding:12px 14px}.run-control-copy{display:grid;gap:3px}.run-control-copy span{color:#65736f;font-size:12px;font-weight:800}.run-control-copy strong{color:#1f332d;font-size:14px;font-weight:900}.run-progress-track{height:10px;border-radius:999px;background:#e6eee9;overflow:hidden}.run-progress-track span{display:block;height:100%;border-radius:inherit;background:#2f7d6d;transition:width .24s ease}.run-progress-track.in-card{height:8px}.panel{min-height:220px;background:#fff;border:1px solid #e2e5df;border-radius:8px;padding:18px;box-shadow:0 12px 32px #29312c0f}.console-panel,.master-data-panel,.planning-panel,.constraint-panel{margin:0 0 24px;background:#fff;border:1px solid #e2e5df;border-radius:8px;padding:18px;box-shadow:0 12px 32px #29312c0f}.home-panel{margin:0 0 24px;display:grid;gap:18px}.home-header,.project-list-panel,.readiness-panel,.home-empty{background:#fff;border:1px solid #e2e5df;border-radius:8px;box-shadow:0 12px 32px #29312c0f}.home-header{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px}.home-header span,.management-drawer header span{color:#2f7d6d;font-size:12px;font-weight:900}.home-header h2{margin:5px 0;font-size:24px}.home-header p,.home-section-title p{color:#66736f;font-size:13px;line-height:1.5}.home-header-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}.home-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(320px,.85fr);gap:18px}.agent-panel,.profile-panel{margin:0 0 24px;display:grid;gap:18px}.agent-header,.profile-header,.profile-card{background:#fff;border:1px solid #e2e5df;border-radius:8px;box-shadow:0 12px 32px #29312c0f}.agent-header,.profile-header{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px}.agent-header span,.profile-header span,.profile-card-title span{color:#2f7d6d;font-size:12px;font-weight:900}.agent-header h2,.profile-header h2{margin:5px 0;font-size:24px;word-break:break-word}.agent-header p,.profile-header p{color:#66736f;font-size:13px;line-height:1.5}.agent-header-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.agent-status-strip,.agent-task-workspace,.agent-task-card{background:#fff;border:1px solid #e2e5df;border-radius:8px;box-shadow:0 12px 32px #29312c0f}.agent-status-strip{display:grid;grid-template-columns:minmax(0,1fr) minmax(190px,240px) auto minmax(190px,240px);align-items:center;gap:16px;padding:16px 18px}.agent-status-main span,.agent-panel-head span,.agent-task-panel>span{color:#2f7d6d;font-size:12px;font-weight:900}.agent-status-main strong{display:block;margin:3px 0;font-size:20px}.agent-status-main p{margin:0;color:#66736f;font-size:13px;line-height:1.5}.agent-status-meter{display:grid;gap:8px}.agent-status-meter>div:first-child,.agent-status-meta{display:flex;align-items:center;justify-content:space-between;gap:10px}.agent-status-meter span,.agent-status-meta span{color:#66736f;font-size:12px;font-weight:800}.agent-status-meter strong{font-size:20px}.agent-status-progress{height:9px;overflow:hidden;border-radius:999px;background:#eef2ee}.agent-status-progress i{display:block;height:100%;max-width:100%;border-radius:inherit;background:linear-gradient(90deg,#2f7d6d,#73c29f);transition:width .24s ease}.agent-status-meta{flex-wrap:wrap;justify-content:flex-end}.agent-status-meta span{padding:5px 8px;border-radius:999px;background:#f4f8f5;white-space:nowrap}.agent-usage-card{display:grid;min-width:0;gap:7px;padding:10px 12px;border:1px solid #d5ebe3;border-radius:8px;background:#f4fbf8}.agent-usage-card-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.agent-usage-card-head span,.agent-usage-card small{color:#66736f;font-size:12px;font-weight:800}.agent-usage-card-head strong{color:#20352f;font-size:18px}.agent-usage-progress{height:8px;overflow:hidden;border-radius:999px;background:#e2eee8}.agent-usage-progress.slim{height:7px}.agent-usage-progress i{display:block;height:100%;max-width:100%;border-radius:inherit;background:linear-gradient(90deg,#2f7d6d,#75c9a5);transition:width .24s ease}.agent-task-grid{display:grid;grid-template-columns:repeat(5,minmax(150px,1fr));gap:10px;overflow-x:auto;padding-bottom:4px}.agent-task-card{min-height:118px;min-width:0;padding:13px;text-align:left;color:#20352f;display:grid;align-content:start;gap:8px;transition:transform .16s ease,border-color .16s ease,background .16s ease}.agent-task-card:hover{transform:translateY(-1px);border-color:#b8dcd1}.agent-task-card.active{border-color:#2f7d6d;background:#eef8f3}.agent-task-card span{justify-self:start;padding:4px 8px;border-radius:999px;background:#f4f8f5;color:#2f7d6d;font-size:12px;font-weight:900}.agent-task-card.tone-danger span{color:#9a3b2d;background:#fff3ef}.agent-task-card.tone-warning span{color:#8a641d;background:#fff8df}.agent-task-card strong{font-size:15px}.agent-task-card small{color:#66736f;line-height:1.4}.agent-task-card em{margin-top:4px;color:#2f7d6d;font-style:normal;font-weight:900}.agent-layout{display:grid;grid-template-columns:minmax(188px,220px) minmax(0,1fr) minmax(300px,360px);gap:14px;align-items:stretch}.agent-layout.actions-hidden{grid-template-columns:minmax(188px,220px) minmax(0,1fr)}.agent-layout.conversation-collapsed{grid-template-columns:58px minmax(0,1fr) minmax(300px,360px)}.agent-layout.conversation-collapsed.actions-hidden{grid-template-columns:58px minmax(0,1fr)}.agent-layout.agent-layout-single{grid-template-columns:minmax(0,1fr)}.agent-conversation-list,.agent-chat-card,.agent-action-panel,.agent-empty{background:#fff;border:1px solid #e2e5df;border-radius:8px;box-shadow:0 12px 32px #29312c0f}.agent-empty{padding:20px;color:#66736f}.agent-conversation-list{display:grid;align-content:start;gap:8px;padding:14px;min-height:680px}.agent-conversation-list.collapsed{min-height:680px;padding:10px;justify-items:center}.agent-conversation-item{width:100%;border:1px solid #e2e5df;background:#fff;color:#1f2933;border-radius:8px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:stretch;overflow:hidden;transition:border-color .16s ease,background .16s ease,transform .16s ease}.agent-conversation-item.active{border-color:#2f7d6d;background:#eef8f3}.agent-conversation-item:hover{transform:translateY(-1px);border-color:#b8dcd1}.agent-conversation-main{min-height:auto;width:100%;border:0;border-radius:0;background:transparent;color:inherit;text-align:left;padding:12px}.agent-conversation-delete{min-height:auto;border:0;border-radius:0;background:transparent;color:#8d2f25;font-size:12px;padding:5px 7px;opacity:.72}.agent-conversation-delete:hover{background:#fff5f3;opacity:1}.agent-side-title{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#2f7d6d;font-size:12px;font-weight:900;margin-bottom:4px}.agent-collapse-button,.agent-conversation-actions button,.agent-conversation-rename button{min-height:28px;padding:4px 8px;border-color:#d7e5de;background:#fff;color:#2f7d6d;font-size:12px}.agent-conversation-actions{display:grid;align-content:stretch;border-left:1px solid #e2e5df}.agent-conversation-actions button{border:0;border-radius:0}.agent-conversation-actions button+button{border-top:1px solid #e2e5df}.agent-conversation-rename{grid-column:1 / -1;display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:6px;padding:8px}.agent-conversation-rename input{min-height:32px;font-size:13px}.agent-conversation-list strong,.agent-conversation-list span{display:block}.agent-conversation-list span,.agent-conversation-list p{color:#66736f;font-size:12px}.agent-main-column{display:grid;gap:14px;min-width:0}.agent-record-list,.agent-flow-message-list{display:grid;gap:10px}.agent-record-item,.agent-flow-message{display:grid;gap:6px;padding:11px;border:1px solid #e2e5df;border-radius:8px;background:#fff}.agent-record-item span,.agent-flow-message span{color:#2f7d6d;font-size:12px;font-weight:900}.agent-record-item p,.agent-flow-message p{margin:0;color:#243b35;font-size:13px;line-height:1.6;white-space:pre-wrap}.agent-record-markdown{max-height:none;font-size:13px}.agent-record-markdown p,.agent-record-markdown li,.agent-record-markdown td,.agent-record-markdown th{font-size:13px;line-height:1.65}.agent-record-markdown table{width:100%;margin:8px 0;border-collapse:collapse;overflow:hidden;border-radius:8px}.agent-record-markdown th,.agent-record-markdown td{padding:7px 9px;border:1px solid #dfe8df;text-align:left}.agent-record-markdown th{background:#f3f8f5}.agent-flow-collapsed-message{width:100%;display:grid;gap:6px;padding:10px 12px;border:1px dashed #bddbd0;border-radius:8px;background:#f5fbf8;color:#243b35}.agent-flow-collapsed-message strong{color:#2f7d6d;font-size:13px}.agent-flow-collapsed-message p{margin:0;color:#586761;font-size:13px;line-height:1.55}.agent-flow-collapse-toggle{justify-self:start;min-height:30px;padding:5px 10px;border:1px solid #cfe3da;background:#fff;color:#2f7d6d;font-size:12px;font-weight:800}.agent-flow-message.role-user .agent-flow-collapse-toggle{justify-self:end}.agent-record-action-item{width:100%;min-height:62px;padding:10px 12px;display:grid;gap:4px;justify-items:start;border-color:#e2e5df;background:#fff;color:#20352f;text-align:left}.agent-record-action-item:hover{border-color:#b8dcd1;background:#f7fbf9}.agent-record-action-item span{color:#2f7d6d;font-size:12px;font-weight:900}.agent-record-action-item strong{font-size:14px;line-height:1.45}.agent-record-action-item small{color:#66736f}.agent-flow-message.role-user{justify-items:end;background:#f4fbf8}.agent-flow-message.role-assistant{justify-items:start}.agent-task-workspace{padding:14px}.agent-task-panel{display:grid;gap:14px}.agent-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.agent-panel-head h3{margin:4px 0;font-size:18px}.agent-panel-head p{margin:0;color:#66736f;font-size:13px;line-height:1.5}.agent-panel-head.compact h3{font-size:16px}.agent-summary-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.agent-summary-card{min-width:0;padding:10px;border:1px solid #e2e5df;border-radius:8px;background:#f8fbf9}button.agent-summary-card{width:100%;min-height:68px;display:grid;justify-items:start;align-content:center;color:#20352f;text-align:left}button.agent-summary-card.active{border-color:#2f7d6d;background:#eef8f3}.agent-summary-card span{display:block;color:#66736f;font-size:12px;font-weight:800}.agent-summary-card strong{display:block;margin-top:4px;font-size:20px}.agent-issue-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.agent-issue-list{display:grid;align-content:start;gap:8px}.agent-issue-list h4{margin:0;font-size:14px}.agent-issue-card{display:grid;gap:7px;padding:11px;border:1px solid #e2e5df;border-left:4px solid #2f7d6d;border-radius:8px;background:#fff}.agent-issue-card.danger{border-left-color:#ba3f2f;background:#fffaf8}.agent-issue-card.warning{border-left-color:#d79a2a;background:#fffdf5}.agent-issue-card p{margin:0;color:#66736f;font-size:12px;line-height:1.45}.agent-issue-card button{justify-self:start;min-height:30px;padding:5px 9px;font-size:12px}.agent-wizard-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.agent-wizard-option{display:grid;gap:7px}.agent-wizard-option span{color:#66736f;font-size:12px;font-weight:900}.agent-choice-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.agent-choice-row button{min-height:38px;padding:7px 10px;border-color:#dfe8df;background:#fff;color:#4f5f5a;font-size:13px;white-space:nowrap}.agent-choice-row button.active{border-color:#2f7d6d;background:#2f7d6d;color:#fff}.agent-next-step-card{display:grid;gap:6px;padding:12px;border:1px solid #d8e7df;border-radius:8px;background:#eef8f3}.agent-next-step-card p{margin:0;color:#4f5f5a;font-size:13px;line-height:1.55}.agent-next-step-card button{justify-self:start;margin-top:4px}.agent-mode-switch{display:inline-flex;flex-wrap:wrap;gap:6px;padding:4px;border:1px solid #dfe8df;border-radius:8px;background:#f8fbf9}.agent-mode-switch button{min-height:32px;padding:6px 12px;border-color:transparent;background:transparent;color:#4f5f5a;font-size:13px}.agent-mode-switch button.active{background:#2f7d6d;color:#fff}.agent-chat-card{position:relative;height:min(760px,calc(100vh - 210px));min-height:520px;max-height:min(760px,calc(100vh - 210px));display:block;overflow:hidden}.deep-chat-host{padding:0}.agent-flow-transcript-card{display:grid;gap:12px;min-height:280px;padding:16px;border:1px solid #e2e5df;border-radius:8px;background:#fff;box-shadow:0 12px 32px #29312c0f}.agent-flow-attachment-list{display:flex;flex-wrap:wrap;gap:8px;justify-content:inherit}.agent-hidden-file-input{position:absolute;width:1px;height:1px;overflow:hidden;opacity:0;pointer-events:none}.agent-deep-chat{width:100%;height:100%;display:block}.agent-draft-attachment-strip{position:absolute;left:24px;right:24px;bottom:74px;z-index:3;display:flex;justify-content:center;pointer-events:none}.agent-draft-attachment-list{max-width:min(680px,100%);display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-start;pointer-events:auto}.agent-draft-attachment-chip{display:inline-flex;align-items:center;gap:8px;max-width:min(360px,100%);padding:7px 9px;border:1px solid #b8ddd2;border-radius:10px;background:#f2fbf7;color:#1f332f;font-size:12px;font-weight:700;box-shadow:0 8px 22px #17372f14}.agent-draft-attachment-chip>span:nth-child(2){min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.agent-draft-attachment-chip.muted{color:#66736f;background:#f7faf8}.agent-draft-attachment-icon{width:22px;height:22px;border-radius:7px;display:grid;place-items:center;flex:0 0 auto;background:#fff;border:1px solid #cfe5dc;color:#2f7d6d;font-size:11px;font-weight:900}.agent-draft-attachment-chip button{width:20px;height:20px;border:0;border-radius:999px;display:grid;place-items:center;flex:0 0 auto;padding:0;color:#5e6a67;background:transparent;cursor:pointer}.agent-draft-attachment-chip button:hover{background:#e4f3ec;color:#b42318}.agent-message-list{display:flex;flex-direction:column;gap:18px;padding:24px clamp(16px,3vw,32px);min-height:0;overflow:auto;scroll-behavior:smooth}.agent-message{width:100%;max-width:820px;display:grid;grid-template-columns:32px minmax(0,1fr);gap:12px;align-items:start;border:0;border-radius:0;background:transparent;padding:0}.agent-message.role-user{align-self:flex-end;max-width:min(720px,88%);grid-template-columns:minmax(0,1fr)}.agent-message.role-tool{max-width:100%}.agent-message-avatar{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:#eef8f3;color:#2f7d6d;font-size:12px;font-weight:900}.agent-message.role-user .agent-message-avatar{display:none}.agent-message-body{min-width:0;color:#22322e;line-height:1.72}.agent-message.role-user .agent-message-body{background:#eef8f3;border:1px solid #cae6db;border-radius:16px;padding:12px 14px}.agent-message:not(.role-user):not(.role-tool) .agent-message-body{background:#f8fbf9;border:1px solid #e1ece6;border-radius:16px;padding:12px 14px}.agent-message.role-tool .agent-message-body{background:#fff9eb;border:1px solid #ead7a9;border-radius:12px;padding:12px 14px}.agent-message.failed .agent-message-body{background:#fff5f3;border-color:#f0b7ad;color:#8d2f25}.agent-message span{display:block;color:#2f7d6d;font-size:12px;font-weight:900;margin-bottom:6px}.agent-message-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:6px}.agent-message-meta span{margin-bottom:0}.agent-message-footer{display:flex;justify-content:flex-start;margin-top:10px}.agent-message-action{min-height:26px;padding:3px 8px;border-color:transparent;background:transparent;color:#66736f;font-size:12px}.agent-message-action:hover{border-color:#d7e5de;background:#f7faf8;color:#2f7d6d}.agent-message-attachments{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 10px}.agent-message .agent-message-attachments span{display:inline-flex;align-items:center;max-width:100%;border:1px solid #b8dcd1;border-radius:999px;background:#fff;color:#2f7d6d;padding:5px 10px;font-size:12px;font-weight:900;line-height:1.2;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.agent-markdown,.agent-empty-message{margin:0;line-height:1.72}.agent-markdown{overflow-x:auto;overflow-y:auto;padding-right:4px}.agent-markdown p{margin:0 0 10px}.agent-markdown p:last-child{margin-bottom:0}.agent-markdown h1,.agent-markdown h2,.agent-markdown h3,.agent-markdown h4,.agent-markdown h5,.agent-markdown h6{margin:14px 0 8px;color:#1f2933;line-height:1.35}.agent-markdown h1{font-size:20px}.agent-markdown h2{font-size:18px}.agent-markdown h3{font-size:16px}.agent-markdown h4,.agent-markdown h5,.agent-markdown h6{font-size:14px}.agent-markdown ul,.agent-markdown ol{margin:8px 0 10px 18px;padding:0}.agent-markdown li{margin:4px 0}.agent-markdown code{background:#edf5ef;border-radius:4px;padding:1px 5px;font-size:.92em}.agent-markdown pre{overflow:auto;background:#f4f7f4;border:1px solid #e2e8e1;border-radius:8px;padding:12px}.agent-markdown pre code{background:transparent;padding:0}.agent-markdown table{width:100%;min-width:320px;border-collapse:collapse;margin:10px 0;font-size:13px}.agent-markdown th,.agent-markdown td{border:1px solid #dfe8df;padding:7px 8px;text-align:left;vertical-align:top}.agent-markdown th{background:#f3f8f5}.agent-markdown hr{height:1px;margin:14px 0;border:0;background:#dfe8df}.agent-stream-cursor{display:inline-block;width:7px;height:16px;margin-left:2px;background:#2f7d6d;animation:agent-cursor-blink 1s steps(2,start) infinite;vertical-align:text-bottom}@keyframes agent-cursor-blink{50%{opacity:0}}.agent-empty-message{color:#66736f;display:grid;gap:10px;place-items:start;max-width:680px;margin:auto;padding:32px 0}.agent-empty-message button{border:1px solid #dfe8df;background:#fff;color:#263a34;font-size:13px;min-height:34px}.agent-input-card{border-top:1px solid #e2e5df;padding:14px clamp(14px,4vw,44px);background:#fff}.agent-input-card textarea{width:100%;min-height:74px;max-height:180px;resize:vertical;border-radius:14px;padding:13px 14px;line-height:1.55}.agent-input-actions,.agent-attachment-list,.agent-action-buttons{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.agent-input-actions{justify-content:space-between;margin-top:10px}.agent-input-actions span{color:#66736f;font-size:12px;margin-right:auto}.file-button{position:relative;overflow:hidden}.file-button input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer}.agent-attachment-list{margin-bottom:8px}.agent-attachment-list button{border-color:#b8dcd1;color:#2f7d6d;background:#eef8f3}.agent-action-panel{display:grid;align-content:start;gap:10px;padding:14px;position:sticky;top:18px;height:min(760px,calc(100vh - 210px));max-height:min(760px,calc(100vh - 210px));overflow:auto}.agent-action-title{display:flex;align-items:center;justify-content:space-between;color:#2f7d6d;font-weight:900}.agent-action-group{display:grid;gap:8px}.agent-action-group-header{min-height:34px;width:100%;justify-content:space-between;border-color:#dfe8df;background:#f8fbf9;color:#20352f;font-size:13px;padding:7px 10px}.agent-action-group-body{display:grid;grid-template-columns:1fr;gap:10px}.agent-action-card{border:1px solid #e2e5df;border-left:4px solid #2f7d6d;border-radius:8px;padding:12px;display:grid;gap:10px}.agent-action-card.risk-high{border-left-color:#ba3f2f}.agent-action-card.status-executed{opacity:.72}.agent-action-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.agent-action-card strong{display:block;line-height:1.45}.agent-action-card-head span,.agent-preview-samples,.agent-action-notes{color:#66736f;font-size:12px}.agent-action-badges{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:5px;flex:0 0 auto}.agent-action-badges span{display:inline-flex;align-items:center;min-height:22px;border:1px solid #d7e5de;border-radius:999px;background:#fff;color:#2f7d6d;font-size:11px;font-weight:900;padding:2px 8px}.agent-action-badges .risk-high{border-color:#f0b7ad;color:#8d2f25;background:#fff5f3}.agent-action-badges .risk-medium{border-color:#ead7a9;color:#8a640d;background:#fff9eb}.agent-preview-counts{display:flex;flex-wrap:wrap;gap:6px}.agent-preview-counts span{border:1px solid #d7e5de;border-radius:999px;background:#f8fbf9;color:#20352f;font-size:12px;font-weight:800;padding:4px 8px}.agent-preview-samples{margin:0;line-height:1.55}.agent-action-notes{margin:0;padding-left:18px;line-height:1.55}.agent-action-notes.danger{color:#8d2f25}.agent-raw-details summary{cursor:pointer;color:#2f7d6d;font-size:12px;font-weight:900}.agent-action-card pre{max-height:150px;overflow:auto;margin:0;padding:10px;border-radius:6px;background:#f8faf7;font-size:12px;white-space:pre-wrap}.agent-action-entry{position:fixed;right:24px;bottom:24px;z-index:60;display:grid;gap:8px;justify-items:end}.agent-action-entry>button{min-height:42px;padding:8px 13px;display:inline-flex;align-items:center;gap:10px;border-color:#b8dcd1;background:#fff;color:#20352f;box-shadow:0 14px 32px #1f293329}.agent-action-entry>button strong{color:#2f7d6d}.agent-action-entry>button span{color:#66736f;font-size:12px}.agent-action-popover{width:min(760px,calc(100vw - 48px));max-height:min(460px,58vh);overflow:auto;padding:12px;border:1px solid #dfe8df;border-radius:8px;background:#fff;box-shadow:0 18px 42px #1f29332e;display:grid;gap:10px}.agent-action-group.compact{display:grid;gap:7px;padding:10px;border:1px solid #e2e5df;border-radius:8px;background:#f8fbf9}.agent-action-group-toggle{width:100%;min-height:34px;padding:0;display:flex;align-items:center;justify-content:space-between;gap:12px;border:0;background:transparent;color:#20352f;text-align:left}.agent-action-group-toggle span{flex:0 0 auto;color:#66736f;font-size:12px;font-weight:900}.agent-action-group-body.compact{display:grid;gap:7px}.agent-action-group.compact.status-failed{border-color:#f0c2b9;background:#fff8f6}.agent-action-group.compact.status-executed{border-color:#c9e5d8;background:#f3fbf7}.agent-action-group.compact.status-pending_confirmation{border-color:#d9d58d;background:#fffdf0}.agent-action-group.compact h4{margin:0;color:#2f7d6d;font-size:13px}.agent-action-row{width:100%;min-height:38px;padding:8px 10px;justify-content:space-between;border-color:#e2e5df;background:#f8fbf9;color:#20352f;text-align:left}.agent-action-row span{min-width:0;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.45}.agent-action-row em{flex:0 0 auto;color:#2f7d6d;font-size:12px;font-style:normal;font-weight:900}.agent-action-detail-sheet{height:min(75vh,720px);display:grid;grid-template-rows:auto minmax(0,1fr) auto}.agent-action-detail-body{overflow:auto;padding:16px;display:grid;align-content:start;gap:14px}.agent-preview-counts.large span{font-size:13px;padding:7px 10px}.agent-action-detail-section{display:grid;gap:8px;padding:12px;border:1px solid #e2e5df;border-radius:8px;background:#fff}.agent-action-detail-section.danger{border-color:#f0b7ad;background:#fff8f6}.agent-action-detail-section.tone-create{border-color:#c5e4d6;background:#f4fbf7}.agent-action-detail-section.tone-update{border-color:#c9ddf2;background:#f5f9ff}.agent-action-detail-section.tone-delete{border-color:#f0b7ad;background:#fff8f6}.agent-action-detail-section.tone-skip{border-color:#dfe8df;background:#fafcfb}.agent-action-detail-section.tone-failed{border-color:#f0b7ad;background:#fff8f6}.agent-action-detail-section.tone-neutral{border-color:#dfe8df;background:#fff}.agent-action-detail-section h4{margin:0;color:#20352f;font-size:14px}.agent-preview-table{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px}.agent-preview-table span{padding:8px 10px;border:1px solid #dfe8df;border-radius:8px;background:#f8fbf9;font-size:13px}.agent-markdown-table-wrap{width:100%;overflow-x:auto;margin:10px 0}.agent-markdown-table-wrap table{margin:0}.agent-action-impact-table{overflow:hidden;border:1px solid #dfe8df;border-radius:8px;background:#fff}.agent-action-impact-row{display:grid;grid-template-columns:minmax(120px,1.1fr) minmax(120px,1.2fr) minmax(82px,.7fr) minmax(140px,1.5fr);min-height:38px;border-top:1px solid #edf2ef}.agent-action-impact-row:first-child{border-top:0}.agent-action-impact-row.head{min-height:34px;background:#f3f8f5;color:#4c5f58;font-size:12px;font-weight:900}.agent-action-impact-row span{min-width:0;padding:9px 10px;border-left:1px solid #edf2ef;color:#20352f;font-size:13px;line-height:1.45;overflow-wrap:anywhere}.agent-action-impact-row span:first-child{border-left:0;font-weight:900}.profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.profile-card{display:grid;gap:16px;padding:18px}.profile-card-title{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.profile-card-title strong{color:#263a34;font-size:17px;text-align:right;word-break:break-word}.profile-meta-list{display:grid;gap:10px;margin:0}.profile-meta-list div{display:grid;grid-template-columns:minmax(86px,.28fr) minmax(0,1fr);gap:12px;padding:10px 0;border-bottom:1px solid #edf0eb}.profile-meta-list div:last-child{border-bottom:0}.profile-meta-list dt{color:#66736f;font-size:12px;font-weight:900}.profile-meta-list dd{margin:0;color:#263a34;font-size:13px;font-weight:700;text-align:right;word-break:break-all;display:flex;justify-content:flex-end;align-items:center;gap:10px;flex-wrap:wrap}.profile-card-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}.profile-create-org-button{margin-left:auto}.profile-reset-password-button{min-height:0;padding:0;font-size:13px}.profile-join-form,.profile-application-form{display:grid;gap:14px}.profile-join-form label,.profile-application-form label{display:grid;gap:7px;color:#4f5f59;font-size:12px;font-weight:900}.profile-join-form input,.profile-join-form textarea,.profile-application-form input,.profile-application-form textarea{width:100%;border:1px solid #d9dfd8;border-radius:7px;padding:10px 12px;color:#1f2933;font:inherit;resize:vertical}.profile-lookup-result{margin:0;border:1px solid #b9e1cd;border-radius:7px;background:#f2fbf6;color:#255f52;padding:10px 12px;font-size:13px;font-weight:800}.application-list,.member-list{display:grid;gap:10px}.application-list.compact{gap:8px}.application-item,.member-row{display:grid;gap:6px;border:1px solid #e2e8e1;border-radius:8px;background:#fbfcfa;padding:12px}.application-item.review{grid-template-columns:minmax(0,1fr) auto;align-items:start}.application-item strong,.member-row strong{color:#263a34;font-size:14px;min-width:0;overflow-wrap:anywhere}.application-item span,.member-row span,.application-item small{color:#66736f;font-size:12px;line-height:1.45}.application-item p{margin:4px 0 0;color:#4f5f59;font-size:13px;line-height:1.5}.member-row{grid-template-columns:minmax(0,1fr) auto;align-items:center}.platform-ai-quota-list{display:grid;gap:10px}.platform-ai-quota-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,320px);align-items:center;gap:14px;border:1px solid #e2e8e1;border-radius:8px;background:#fbfcfa;padding:12px}.platform-ai-quota-main{display:grid;min-width:0;gap:7px}.platform-ai-quota-main strong{color:#263a34;font-size:14px;overflow-wrap:anywhere}.platform-ai-quota-main span{color:#66736f;font-size:12px;font-weight:800}.platform-ai-quota-edit{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px}.platform-ai-quota-edit label{display:grid;gap:6px;color:#66736f;font-size:12px;font-weight:900}.platform-ai-quota-edit input{width:100%;border:1px solid #d9dfd8;border-radius:7px;padding:9px 10px;font:inherit}.member-main{display:grid;gap:5px;min-width:0}.member-self-note{justify-self:end;border:1px solid #cfe7de;border-radius:999px;background:#f0faf6;color:#2d846f;padding:5px 10px;white-space:nowrap}.profile-org-card{align-self:start}.profile-org-list{display:grid;gap:10px}.profile-org-item{display:flex;align-items:center;justify-content:space-between;gap:14px;width:100%;border:1px solid #e1e7df;background:#fbfcfa;color:#263a34;padding:12px 14px;text-align:left}.profile-org-item:hover,.profile-org-item.active{border-color:#2f7d6d;background:#f2fbf6}.profile-org-item div{display:grid;gap:4px;min-width:0}.profile-org-item strong{overflow:hidden;color:#263a34;font-size:14px;text-overflow:ellipsis;white-space:nowrap}.profile-org-item span{color:#7a8782;font-size:12px}.profile-org-item em{flex-shrink:0;border:1px solid #cde5d6;border-radius:999px;padding:4px 9px;color:#2f7d6d;font-size:12px;font-style:normal;font-weight:900}.project-list-panel,.readiness-panel{padding:18px}.home-section-title{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px}.home-section-title h3{margin:0 0 4px;color:#263a34;font-size:17px}.home-section-title>span{flex-shrink:0;border:1px solid #dde3dc;border-radius:999px;padding:5px 9px;color:#53615f;font-size:12px;font-weight:800}.project-list,.readiness-list{display:grid;gap:10px}.project-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;border:1px solid #dde3dc;border-radius:8px;background:#fbfcfa;padding:12px}.project-card.active{border-color:#2f7d6d;background:#edf8f3}.project-card-main{display:grid;gap:6px;min-width:0;padding:0;text-align:left;background:transparent;color:#263a34}.project-card-main strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:16px}.project-card-main span{display:flex;align-items:center;flex-wrap:wrap;gap:8px;color:#66736f;font-size:12px;font-weight:800}.project-card-main em{border-radius:999px;background:#2f7d6d;color:#fff;padding:3px 7px;font-style:normal;font-size:11px}.project-card-actions{display:flex;gap:8px}.readiness-item{display:grid;gap:5px;min-height:76px;text-align:left;border:1px solid #dde3dc;border-radius:8px;background:#fbfcfa;color:#263a34;padding:11px 12px}.readiness-item span{color:#8a5b2c;font-size:11px;font-weight:900}.readiness-item span.ready{color:#2f7d6d}.readiness-item strong{font-size:14px}.readiness-item small{color:#66736f;font-size:12px;font-weight:700}.home-run-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}.home-empty{display:grid;justify-items:start;gap:9px;padding:24px;color:#66736f}.home-empty.compact{min-height:190px;align-content:center;box-shadow:none}.home-empty strong{color:#263a34;font-size:18px}.home-empty-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.home-empty-actions button{min-width:112px}.drawer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;display:grid;justify-content:end;background:#1f29333d}.management-drawer{width:min(420px,100vw);min-height:100vh;background:#fff;box-shadow:-18px 0 42px #1f29332e;padding:22px}.management-drawer form{display:grid;gap:18px}.management-drawer header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding-bottom:14px;border-bottom:1px solid #edf0eb}.management-drawer h2{margin:5px 0 0;font-size:22px}.drawer-actions{display:flex;flex-wrap:wrap;gap:10px;padding-top:8px;border-top:1px solid #edf0eb}.master-data-panel header,.planning-panel header,.constraint-panel header,.console-panel header{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px}.section-heading h2{margin-bottom:5px}.section-heading p{max-width:680px;color:#66736f;font-size:13px;line-height:1.55}.console-panel header span{color:#62716f;font-size:13px;font-weight:800}.workflow-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.workflow-step{min-height:112px;display:grid;align-content:start;gap:8px;text-align:left;border:1px solid #dde3dc;background:#fbfcfa;color:#243832;border-radius:8px;padding:14px}.workflow-step:hover{border-color:#2f7d6d;background:#f2faf6}.workflow-step span{color:#2f7d6d;font-size:12px;font-weight:900}.workflow-step strong{font-size:17px;line-height:1.25}.workflow-step small{color:#62716f;font-size:12px;line-height:1.35}.dashboard-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:14px}.dashboard-grid article{display:grid;gap:6px;border:1px solid #edf0eb;border-radius:8px;background:#fbfcfa;padding:13px 14px}.dashboard-grid span{color:#6d7875;font-size:12px;font-weight:800}.dashboard-grid strong{color:#263a34;font-size:20px;line-height:1.2;overflow-wrap:anywhere}.console-actions{margin-top:24px;padding-top:20px;border-top:1px solid #edf0eb}.console-actions h3{font-size:14px;font-weight:800;color:#62716f;margin:0 0 14px}.action-buttons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.action-btn{min-height:100px;display:grid;align-content:start;gap:8px;text-align:left;border:1px solid #dde3dc;background:#fbfcfa;color:#243832;border-radius:8px;padding:16px;cursor:pointer;transition:border-color .15s,background .15s}.action-btn:hover:not(:disabled){border-color:#2f7d6d;background:#f2faf6}.action-btn:disabled{opacity:.48;cursor:not-allowed}.action-btn.primary{border-color:#2f7d6d;background:#eaf7f1}.action-btn.primary:hover:not(:disabled){background:#d5f0e2}.action-btn strong{font-size:17px;line-height:1.3}.action-btn small{color:#62716f;font-size:12px;line-height:1.35;font-weight:600}.master-summary{display:flex;flex-wrap:wrap;gap:8px;color:#53615f;font-size:13px;font-weight:800}.master-summary span{border:1px solid #dde3dc;border-radius:8px;background:#fafbf8;padding:7px 9px}.master-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.data-workbench{display:grid;grid-template-columns:210px minmax(0,1fr) 320px;gap:16px;align-items:start;height:100%;overflow:hidden}.timetable-settings-layout{display:grid;gap:16px}.settings-card{border:1px solid #dde3dc;border-radius:8px;background:#fff;padding:14px}.settings-editor,.template-editor{height:100%;overflow:auto;display:grid;align-content:start;gap:14px}.settings-editor-header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.settings-editor-header h3{margin:0;color:#21342f;font-size:16px}.settings-editor-header p{margin:5px 0 0;color:#64736e;font-size:12px;line-height:1.5}.settings-grid,.template-form{display:grid;grid-template-columns:minmax(220px,1fr) minmax(280px,auto) minmax(260px,1fr);gap:12px;align-items:end;border:1px solid #e3e9e1;border-radius:8px;background:#fbfcfa;padding:14px}.template-form{grid-template-columns:minmax(220px,1fr) minmax(280px,auto)}.settings-grid.single-row{border:0;background:transparent;padding:0}.form-save-button{min-width:132px;justify-self:start;white-space:nowrap}.settings-grid label,.template-form label{display:grid;gap:5px;color:#43514d;font-size:12px;font-weight:800}.template-form-options{display:grid;grid-template-columns:repeat(2,minmax(138px,1fr));gap:8px;min-height:48px}.template-form .template-form-options .checkbox-row{position:relative;display:flex;align-items:center;gap:10px;min-height:48px;margin:0;padding:8px 11px;border:1px solid #dce5df;border-radius:8px;background:#fff;cursor:pointer;white-space:nowrap;transition:border-color .16s ease,background-color .16s ease,box-shadow .16s ease,transform .16s ease}.template-form .template-form-options .checkbox-row:hover{border-color:#a9c7b9;background:#f7fbf8;box-shadow:0 3px 10px #265b4314;transform:translateY(-1px)}.template-form .template-form-options .checkbox-row:has(input:checked){border-color:#75aa91;background:#eef8f2;box-shadow:inset 0 0 0 1px #41846314}.template-form .template-form-options .checkbox-row:has(input:focus-visible){border-color:#4d9874;box-shadow:0 0 0 3px #4d98742e}.template-form .template-form-options .checkbox-row input[type=checkbox]{position:relative;flex:0 0 auto;width:20px;height:20px;margin:0;border:1.5px solid #b8c8c0;border-radius:6px;background:#fff;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;transition:border-color .16s ease,background-color .16s ease,box-shadow .16s ease}.template-form .template-form-options .checkbox-row input[type=checkbox]:after{content:"";position:absolute;top:3px;left:6px;width:5px;height:9px;border:solid #ffffff;border-width:0 2px 2px 0;opacity:0;transform:rotate(45deg) scale(.7);transition:opacity .12s ease,transform .16s ease}.template-form .template-form-options .checkbox-row input[type=checkbox]:checked{border-color:#418463;background:#418463}.template-form .template-form-options .checkbox-row input[type=checkbox]:checked:after{opacity:1;transform:rotate(45deg) scale(1)}.template-form .template-form-options .checkbox-row input[type=checkbox]:focus-visible{outline:none}.template-form .template-form-options .checkbox-row>span{display:grid;gap:1px;color:#31483e;font-size:12px;font-weight:800;line-height:1.35}.template-form .template-form-options .checkbox-row small{color:#778780;font-size:10px;font-weight:600;line-height:1.25}.template-form .template-form-options .checkbox-row:has(input:checked)>span{color:#286247}.template-form .template-form-options .checkbox-row:has(input:checked) small{color:#5f796c}.template-time-preset-mask{position:fixed;top:0;right:0;bottom:0;left:0;z-index:180;display:grid;place-items:center;padding:20px;background:#141e1961;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.template-new-confirm-modal{width:min(520px,calc(100vw - 32px));overflow:hidden;border:1px solid #dce5df;border-radius:10px;background:#fff;box-shadow:0 24px 70px #172a243d}.template-new-confirm-modal>header{padding:22px 22px 16px}.template-new-confirm-modal>header>span{color:#2f7d6d;font-size:11px;font-weight:900}.template-new-confirm-modal h3{margin:4px 0 0;color:#1f302c;font-size:20px}.template-new-confirm-modal p{margin:8px 0 0;color:#63716c;font-size:13px;line-height:1.65}.template-new-confirm-status{display:grid;gap:3px;margin:0 22px 20px;border:1px solid #dce6e0;border-radius:8px;background:#f5f8f6;padding:11px 13px}.template-new-confirm-status.public{border-color:#b8d8cc;background:#eef8f3}.template-new-confirm-status strong{color:#2d493e;font-size:12px}.template-new-confirm-status small{color:#718079;font-size:11px}.template-new-confirm-modal>footer{display:flex;justify-content:flex-end;gap:8px;border-top:1px solid #e3e9e1;background:#fafcfb;padding:14px 22px}.template-time-preset-modal{width:min(880px,calc(100vw - 32px));max-height:min(760px,calc(100vh - 40px));overflow:auto;border:1px solid #dce5df;border-radius:8px;background:#fff;box-shadow:0 24px 70px #172a243d}.template-time-preset-header{position:sticky;top:0;z-index:1;display:flex;justify-content:space-between;align-items:flex-start;gap:20px;border-bottom:1px solid #e3e9e1;background:#fff;padding:20px 22px}.template-time-preset-header span,.template-time-preset-header h3{display:block}.template-time-preset-header span{color:#2f7d6d;font-size:11px;font-weight:900}.template-time-preset-header h3{margin:3px 0 0;color:#1f302c;font-size:21px}.template-time-preset-header p{margin:5px 0 0;color:#66736f;font-size:13px}.template-time-preset-header>button{flex:0 0 auto}.template-time-preset-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:20px 22px}.template-time-preset-card{min-width:0;overflow:hidden;border:1px solid #dce5df;border-radius:8px;background:#fff;color:#243630;padding:0;text-align:left}.template-time-preset-card:hover{border-color:#8ebbae}.template-time-preset-card.active{border-color:#2f7d6d;box-shadow:inset 0 0 0 1px #2f7d6d}.template-time-preset-thumbnail{min-height:168px;display:grid;align-content:center;gap:8px;border-bottom:1px solid #dce5df;background:#f3f7f5;padding:18px}.preset-thumbnail-heading,.preset-thumbnail-row{display:grid;grid-template-columns:52px repeat(3,minmax(0,1fr));align-items:center;gap:7px}.preset-thumbnail-heading span{color:#73807c;font-size:10px;font-weight:800;text-align:center}.preset-thumbnail-row small{color:#66736f;font-size:9px}.preset-thumbnail-row i{height:18px;display:block;border:1px solid #8ebbae;border-radius:4px;background:#dcefe8}.template-time-preset-thumbnail.is-variable .row-one i:nth-of-type(2){transform:translateY(4px)}.template-time-preset-thumbnail.is-variable .row-one i:nth-of-type(3),.template-time-preset-thumbnail.is-variable .row-two i:nth-of-type(1){transform:translateY(-3px)}.template-time-preset-thumbnail.is-variable .row-two i:nth-of-type(3),.template-time-preset-thumbnail.is-variable .row-three i:nth-of-type(2){transform:translateY(5px)}.template-time-preset-content{display:grid;gap:10px;padding:16px 18px 18px}.template-time-preset-title-row{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.template-time-preset-title-row span,.template-time-preset-title-row strong{display:block}.template-time-preset-title-row>div>span{color:#2f7d6d;font-size:10px;font-weight:900}.template-time-preset-title-row strong{margin-top:3px;font-size:16px}.template-time-preset-current{flex:0 0 auto;border:1px solid #b8d8cc;border-radius:999px;background:#eef8f3;color:#216454;padding:3px 8px;font-size:10px;font-weight:900}.template-time-preset-content>p{min-height:42px;margin:0;color:#5f6d68;font-size:12px;line-height:1.55}.template-time-preset-content dl{margin:0;border-top:1px solid #e4eae6;padding-top:10px}.template-time-preset-content dt{color:#78847f;font-size:10px;font-weight:800}.template-time-preset-content dd{margin:3px 0 0;color:#30433d;font-size:12px;line-height:1.45}.template-time-preset-footer{border-top:1px solid #e3e9e1;background:#f7f9f7;color:#64716d;padding:13px 22px;font-size:11px;line-height:1.5}.saved-timetable-preset-section{border-top:1px solid #e3e9e1;padding:18px 22px 22px}.saved-timetable-preset-heading{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:12px}.saved-timetable-preset-heading span,.saved-timetable-preset-heading strong,.saved-timetable-preset-heading small,.saved-timetable-preset-card strong,.saved-timetable-preset-card span,.saved-timetable-preset-card small{display:block}.saved-timetable-preset-heading span{color:#2f7d6d;font-size:11px;font-weight:900}.saved-timetable-preset-heading strong{margin-top:3px;color:#21342f;font-size:16px}.saved-timetable-preset-heading small{max-width:420px;color:#66736f;line-height:1.45;text-align:right}.saved-timetable-preset-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.saved-timetable-preset-card{display:grid;grid-template-columns:88px minmax(0,1fr);align-items:center;gap:12px;min-width:0;padding:10px;border:1px solid #dce5df;border-radius:6px;background:#fff;color:#273b35;text-align:left}.saved-timetable-preset-card:hover{border-color:#2f7d6d;background:#f6fbf8}.saved-timetable-preset-card span{margin-top:3px;color:#2f7d6d;font-size:12px;font-weight:800}.saved-timetable-preset-card small{margin-top:4px;color:#6f7d78}.saved-preset-thumbnail{display:grid;grid-template-columns:repeat(5,1fr);gap:2px;height:58px;padding:5px;border:1px solid #dce5df;background:#f5f8f3}.saved-preset-thumbnail i{border:1px solid #d3e1da;background:#e8f4ee}.fixed-value{min-height:38px;display:flex;align-items:center;border:1px solid #dde6df;border-radius:7px;background:#f5f8f3;padding:8px 10px;color:#2c3e39;font-size:13px;font-weight:900}.template-actions,.period-toolbar,.template-tabs{display:flex;flex-wrap:wrap;gap:8px}.template-inline-preview{display:grid;gap:14px;border:1px solid #e1e8e1;border-radius:10px;background:#fbfcfa;padding:12px}.inline-preview-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.inline-preview-toolbar strong,.course-cell-style-copy strong{display:block;color:#21342f;font-size:14px}.inline-preview-toolbar span,.course-cell-style-copy span{display:block;margin-top:4px;color:#66736f;font-size:12px;line-height:1.45}.template-preview-workbench{display:grid;grid-template-columns:minmax(0,1fr);min-height:0;border:1px solid #e4eae3;border-radius:8px;background:#fff;overflow:hidden}.template-preview-workbench .preview-table-scroll{max-height:560px}.inline-inspector{display:none}.weekday-visibility-strip{display:grid;grid-template-columns:minmax(180px,.8fr) minmax(0,1.6fr);gap:12px;align-items:center;border:1px solid #e3e9e1;border-radius:8px;background:#fff;padding:12px}.weekday-visibility-strip strong{display:block;color:#21342f;font-size:14px}.weekday-visibility-strip span{display:block;margin-top:4px;color:#66736f;font-size:12px;line-height:1.45}.weekday-toggle-list{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.weekday-toggle-chip{min-width:0;min-height:48px;display:grid;justify-items:center;align-content:center;gap:3px;border:1px solid #dce5df;border-radius:8px;background:#f8faf7;color:#53615f;padding:8px 6px;cursor:pointer}.weekday-toggle-chip.active{border-color:#2f7d6d;background:#eef8f3;color:#1d4f45}.weekday-toggle-chip span{margin:0;color:inherit;font-size:13px;font-weight:900}.weekday-toggle-chip small{color:inherit;opacity:.82;font-size:11px;font-weight:800}.template-inspector-mask{position:fixed;top:0;right:0;bottom:0;left:0;z-index:55;display:flex;justify-content:flex-end;background:#1c2a262e}.template-inspector-drawer{width:min(380px,calc(100vw - 32px));height:100vh;border-left:1px solid #dfe7e1;box-shadow:-18px 0 44px #1f312b29;animation:drawerSlideIn .18s ease-out}.template-inspector-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:4px}.template-inspector-header span,.template-inspector-header strong{display:block}.template-inspector-header span{color:#2f7d6d;font-size:12px;font-weight:900}.template-inspector-header strong{margin-top:3px;color:#1f2933;font-size:18px}@keyframes drawerSlideIn{0%{transform:translate(24px);opacity:0}to{transform:translate(0);opacity:1}}.course-cell-style-card{display:grid;grid-template-columns:minmax(170px,.8fr) minmax(280px,1.4fr) minmax(180px,.8fr);gap:12px;align-items:center;border:1px solid #e3e9e1;border-radius:8px;background:#fff;padding:12px}.template-preview-workbench>.course-cell-style-card{border-width:0 0 1px;border-radius:0;background:#fbfcfa}.course-cell-style-controls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.course-cell-style-controls label{display:grid;gap:5px;color:#43514d;font-size:12px;font-weight:800}.course-cell-style-controls select{min-width:0}.course-cell-preview{display:grid;align-content:center;justify-items:center;min-height:76px;border:1px solid #2f7d6d;border-radius:8px;background:#eef8f3;color:#1d4f45;font-size:13px;font-weight:900;line-height:1.6;text-align:center}.course-cell-preview.split{gap:0;background:#fff}.course-cell-preview.split div{width:100%;padding:8px;border-bottom:1px solid #c9ded7}.course-cell-preview.split div:last-child{border-bottom:0}.template-tabs button{border:1px solid #dde3dc;background:#fbfcfa;color:#43514d}.template-tabs button.active{border-color:#2f7d6d;background:#eef8f3;color:#1d4f45}.period-table input,.period-table select{width:100%;min-width:0;padding:7px 8px}.weekday-drawers{display:grid;gap:8px}.weekday-drawer{border:1px solid #e1e8e1;border-radius:8px;background:#fff;overflow:hidden}.weekday-drawer.open{border-color:#9ec9bd;box-shadow:0 8px 24px #29534a14}.weekday-drawer-header{width:100%;display:grid;grid-template-columns:120px 1fr auto;align-items:center;gap:12px;border:0;background:#fbfcfa;padding:12px 14px;text-align:left;cursor:pointer}.weekday-drawer.open .weekday-drawer-header{background:#eef8f3}.weekday-drawer-header span{color:#21342f;font-size:14px;font-weight:900}.weekday-drawer-header small{color:#63716c;font-size:12px;font-weight:800}.weekday-drawer-header strong{color:#2f7d6d;font-size:12px}.weekday-drawer-body{display:grid;gap:10px;padding:12px 14px 14px;border-top:1px solid #e5ebe3}.weekday-period-list{display:grid;gap:8px}.weekday-period-row{display:grid;grid-template-columns:minmax(120px,1fr) 140px 140px 90px auto;gap:10px;align-items:center;padding:10px;border:1px solid #edf1eb;border-radius:7px;background:#fbfcfa}.weekday-period-row strong{color:#21342f;font-size:13px}.weekday-period-row input{min-width:0}.period-time-error{grid-column:1 / -1;margin:0;border-left:3px solid #c65f46;border-radius:4px;background:#fff4ef;color:#9d3f2d;padding:7px 9px;font-size:12px;font-weight:800;line-height:1.45}.inline-check{display:inline-flex;align-items:center;gap:6px;color:#43514d;font-size:12px;font-weight:800}.helper-panel p{margin:0;color:#64736e}.helper-panel strong,.helper-panel span{display:block}.helper-panel span{color:#74807b;font-size:12px;line-height:1.45}.term-settings-card{display:grid;grid-template-columns:minmax(220px,1.3fr) minmax(180px,1fr) 130px 130px auto;gap:12px;align-items:end;border:1px solid #dde3dc;border-radius:8px;background:#fbfcfa;padding:12px;margin-bottom:14px}.term-settings-copy{align-self:center;display:grid;gap:4px;min-width:0}.term-settings-copy strong{color:#263a34;font-size:14px}.term-settings-copy span{color:#66736f;font-size:12px;line-height:1.4}.term-settings-card label{gap:5px;font-size:12px}.term-settings-card input,.term-settings-card select{padding:8px 10px}.term-settings-card button{min-height:36px;padding:8px 12px;white-space:nowrap}.subnav,.template-library{display:grid;gap:8px}.subnav{align-content:start;height:100%;overflow:auto;padding-right:2px}.subnav button,.template-button{display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:left;border:1px solid #dde3dc;background:#fbfcfa;color:#33413d}.subnav button{min-height:74px;padding:12px}.subnav button.active,.template-button.active{border-color:#2f7d6d;background:#eef8f3;color:#21342f}.subnav button div{min-width:0;display:grid;gap:4px}.subnav button strong,.subnav button span{overflow:hidden;text-overflow:ellipsis}.subnav button strong{color:#263a34}.subnav button span{white-space:normal}.subnav button em{min-width:30px;height:30px;display:inline-grid;place-items:center;border-radius:999px;background:#edf3ee;color:#2f7d6d;font-size:12px;font-style:normal;font-weight:900;flex-shrink:0}.subnav button.active em{background:#2f7d6d;color:#fff}.subnav span,.template-button span,.template-button small,.form-note{color:#66736f;font-size:12px;line-height:1.35}.data-table-panel,.detail-panel,.matrix-panel,.planning-class-panel,.subject-plan-panel,.plan-detail-panel,.task-list-panel,.compile-preview{min-width:0;border:1px solid #edf0eb;border-radius:8px;background:#fbfcfa;padding:14px}.master-data-panel .data-table-panel,.master-data-panel .detail-panel{height:100%;overflow-y:auto;overflow-x:hidden}.master-data-panel .detail-panel{width:320px;max-width:320px}.table-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.table-title h3,.detail-form h3,.template-library h3,.compile-preview h3,.task-list-panel h3{margin:0;color:#263a34;font-size:15px}.table-title span{color:#66736f;font-size:12px;font-weight:800}.data-table-title{align-items:flex-start;margin-bottom:12px}.data-table-title div{display:grid;gap:3px}.data-table-title p{color:#66736f;font-size:12px;line-height:1.4}.table-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:12px;padding:10px;border:1px solid #edf0eb;border-radius:8px;background:#fff}.search-field{flex:1 1 260px;min-width:0;display:flex;align-items:center;gap:8px}.search-field span,.table-count{color:#66736f;font-size:12px;font-weight:800;white-space:nowrap}.table-count{flex:0 0 auto}.search-field input{width:100%;min-width:0;border:1px solid #d9ded9;border-radius:8px;background:#fbfcfa;color:#1f2933;padding:9px 11px}.search-field input:focus{border-color:#2f7d6d;outline:2px solid rgba(47,125,109,.14)}.teacher-filter-chips,.tag-presets,.teacher-tag-list,.duplicate-match-list{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.teacher-filter-chips{margin:-2px 0 12px}.teacher-filter-chips button,.tag-preset{min-height:30px;border:1px solid #dce5df;border-radius:999px;background:#fff;color:#3e504b;padding:0 10px;font-size:12px;font-weight:800;line-height:1;white-space:nowrap;cursor:pointer}.teacher-filter-chips button.active,.tag-preset.selected{border-color:#2f7d6d;background:#eaf5f0;color:#176353}.teacher-name-cell{display:flex;align-items:center;gap:8px;min-width:0}.teacher-name-cell strong{min-width:0;overflow-wrap:anywhere}.duplicate-badge,.teacher-tag,.duplicate-match{display:inline-flex;align-items:center;max-width:100%;border-radius:999px;font-size:11px;font-weight:900;line-height:1.2;white-space:nowrap}.duplicate-badge{flex:0 0 auto;background:#fff7e6;color:#9a5b00;border:1px solid #ffd591;padding:3px 7px}.teacher-tag{background:#edf7f2;color:#176353;border:1px solid #cfe5db;padding:4px 8px}.teacher-tag.removable{gap:5px;padding-right:5px}.teacher-tag.removable button{width:18px;height:18px;border:0;border-radius:50%;background:#1763531f;color:#176353;padding:0;font-size:13px;line-height:18px;cursor:pointer}.teacher-tag-list.compact{gap:4px}.muted-text{color:#7b8782;font-size:12px}.duplicate-warning{display:grid;gap:6px;border:1px solid #f6d08f;background:#fff9ef;color:#6f4b0b;border-radius:8px;padding:10px;font-size:12px}.duplicate-match{background:#fff;border:1px solid #f4d7a8;color:#6f4b0b;padding:4px 8px}.tag-editor{display:grid;gap:9px;border:1px solid #e2e8e2;border-radius:8px;background:#fbfcfa;padding:10px}.tag-editor-title{display:grid;gap:3px}.tag-editor-title span{color:#66736f;font-size:12px;line-height:1.35}.tag-input-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.empty-state{display:grid;place-items:center;gap:5px;min-height:126px;border:1px dashed #cfd8d1;border-radius:8px;background:#fff;color:#66736f;text-align:center;padding:18px}.empty-state strong{color:#263a34;font-size:14px}.empty-state span{font-size:12px}.row-actions{display:flex;gap:6px;align-items:center;min-width:max-content}.row-actions button,.btn-secondary{border:1px solid #dde3dc;background:#fff;color:#33413d;border-radius:6px;padding:6px 10px;font-weight:700;white-space:nowrap;cursor:pointer;transition:border-color .15s,background .15s}.row-actions button{flex:0 0 auto;min-width:48px}.row-actions button:hover,.btn-secondary:hover{border-color:#b0c7bc;background:#f5f8f3}.row-actions button.danger{border-color:#ffccc7;color:#b42318}.row-actions button.danger:hover{background:#fff1f0}.modal-mask{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;place-items:center;background:#141e1959;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal-panel{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000002e;max-width:520px;width:calc(100vw - 48px);max-height:80vh;display:grid;grid-template-rows:auto 1fr}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:18px 20px 0}.modal-header h3{margin:0;font-size:16px;color:#263a34}.modal-header-actions{display:inline-flex;align-items:center;gap:8px}.modal-close{background:transparent;border:0;font-size:22px;color:#8d9a97;cursor:pointer;padding:0;line-height:1}.modal-close:hover{color:#263a34}.modal-body{padding:18px 20px 20px;overflow:auto}.modal-actions{display:flex;justify-content:flex-end;gap:10px;border-top:1px solid #eef1ed;padding:12px 20px 18px}.timetable-move-modal{max-width:620px;grid-template-rows:auto minmax(0,1fr) auto}.move-confirm-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.move-confirm-grid div,.move-warning-box{display:grid;gap:5px;border:1px solid #e3e9e1;border-radius:8px;background:#fbfcfa;padding:10px}.move-confirm-grid span,.move-confirm-note,.move-warning-box p{color:#5e6b67;font-size:12px;font-weight:800;line-height:1.45}.move-confirm-grid strong,.move-warning-box strong{color:#1f332d;font-size:13px;font-weight:900;line-height:1.45}.move-warning-box{margin-top:12px;border-color:#e3d4aa;background:#fffdf2}.move-warning-box p,.move-confirm-note{margin:0}.move-confirm-note{margin-top:12px}.bottom-sheet-mask{position:fixed;top:0;right:0;bottom:0;left:0;z-index:120;display:grid;align-items:end;background:#141e1947;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);overscroll-behavior:none}.guide-global-button{min-height:34px;padding:0 14px;white-space:nowrap}.guide-sheet-button{min-height:34px;padding:0 12px;white-space:nowrap}.guide-mask{position:fixed;top:0;right:0;bottom:0;left:0;z-index:360;background:#141e1994;pointer-events:auto}.guide-highlight{position:fixed;z-index:361;border:2px solid #2f8c7c;border-radius:10px;background:#ffffff14;box-shadow:0 0 0 9999px #141e1994,0 18px 44px #1c322a47;pointer-events:none;transition:top .18s ease,left .18s ease,width .18s ease,height .18s ease}.guide-card{position:fixed;z-index:362;width:min(360px,calc(100vw - 32px));padding:16px;border:1px solid #d5e3dc;border-radius:10px;background:#fff;box-shadow:0 18px 46px #15262038;color:#20342e}.guide-card.fallback{left:50%!important;top:104px!important;transform:translate(-50%)}.guide-card span{display:inline-flex;align-items:center;min-height:24px;padding:0 10px;border-radius:999px;background:#edf7f2;color:#2f7b6d;font-size:12px;font-weight:900}.guide-card h3{margin:12px 0 8px;color:#1f2f2a;font-size:18px;line-height:1.25}.guide-card p{margin:0;color:#52635d;font-size:14px;font-weight:700;line-height:1.65}.guide-card .btn-link{margin-top:12px;padding:0}.guide-controls{position:fixed;right:24px;bottom:24px;z-index:362;display:flex;align-items:center;gap:10px;padding:10px;border:1px solid #d5e3dc;border-radius:10px;background:#fff;box-shadow:0 18px 44px #15262033}.guide-controls button{min-height:36px;white-space:nowrap}.bottom-sheet{width:calc(100vw - 24px);height:75vh;min-height:520px;margin:0 12px 16px;border:1px solid #d7e2da;border-radius:12px 12px 10px 10px;background:#fff;box-shadow:0 -18px 50px #1a2a242e;display:grid;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden}.course-preferred-sheet,.room-rule-sheet{height:calc(100vh - 44px);min-height:680px;margin-bottom:16px}.bottom-sheet-header{display:grid;grid-template-columns:minmax(120px,1fr) auto minmax(260px,1fr);align-items:center;gap:16px;padding:14px 16px;border-bottom:1px solid #e5ebe3;background:#fbfcfa}.sheet-kicker,.bottom-sheet-header span{color:#64736e;font-size:12px;font-weight:800}.sheet-context-hint{max-width:min(760px,68vw);margin:6px 0 0;color:#5a6b65;font-size:13px;font-weight:700;line-height:1.55}.sheet-title-editor{justify-self:center;display:inline-flex;align-items:center;gap:8px;min-width:min(460px,42vw);justify-content:center}.sheet-title-editor strong{color:#21342f;font-size:18px;font-weight:900}.title-edit-button{height:28px;border:1px solid #cfdad3;border-radius:999px;background:#fff;color:#2f7d6d;padding:0 10px;font-size:12px;font-weight:900;cursor:pointer}.title-edit-button:hover{border-color:#8fbfb1;background:#eef8f3}.sheet-title-input{width:min(420px,60vw);border:1px solid #cfdad3;border-radius:7px;padding:8px 10px;color:#21342f;font-size:16px;font-weight:900}.sheet-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end;align-items:center}.week-select-inline{display:inline-flex;align-items:center;gap:8px;color:#53615f;font-size:13px;font-weight:900}.week-select-inline select{min-width:112px;padding:8px 10px}.preview-table-scroll{overflow:auto;padding:14px}.sheet-body{display:grid;grid-template-columns:minmax(0,1fr) 300px;min-height:0}.weekly-preview-table{width:100%;min-width:820px;border-collapse:separate;border-spacing:0;border:1px solid #e1e7df;border-radius:8px;overflow:hidden}.weekly-preview-table th,.weekly-preview-table td{border-right:1px solid #e5ebe3;border-bottom:1px solid #e5ebe3;padding:10px;vertical-align:top;text-align:left}.weekly-preview-table th{background:#f5f8f3;color:#2c3e39;font-size:12px;font-weight:900}.weekly-preview-table thead .preview-custom-heading{min-height:44px;background:#e8f3ee;color:#21342f;font-size:13px;text-align:center;vertical-align:middle;cursor:pointer}.weekly-preview-table thead .preview-custom-header-row:first-child .preview-custom-heading{background:#2f7d6d;color:#fff;font-size:16px}.weekly-preview-table thead .preview-custom-heading.left{text-align:left}.weekly-preview-table thead .preview-custom-heading.inactive{background:#eceeec;color:#969e99}.weekly-preview-table th.selected,.weekly-preview-table td.selected{background:#eef8f3;box-shadow:inset 0 0 0 2px #2f7d6d}.weekly-preview-table .period-row-heading{position:relative;width:58px;min-width:58px;padding:0;text-align:right;vertical-align:top;background:#fbfcfa}.weekly-preview-table .period-row-heading span{position:absolute;top:0;right:7px;z-index:1;display:block;padding:0 3px;color:#66736f;background:#fbfcfa;font-size:11px;font-weight:700;font-variant-numeric:tabular-nums;line-height:1;white-space:nowrap;transform:translateY(3px)}.weekly-preview-table .period-row-heading .time-axis-end{top:auto;bottom:0;transform:translateY(-3px)}.weekly-preview-table .timeline-interval-row{height:52px}.weekly-preview-table .preview-time-heading{width:58px;min-width:58px;padding:8px 4px;background:#fbfcfa;text-align:center;vertical-align:middle}.merge-editor-title{display:block;margin-top:4px;color:#34453f;font-size:12px}.time-axis-restore-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid #dfe7e0;background:#f6faf7;padding:8px 12px;color:#53635e;font-size:12px;font-weight:800}.time-axis-restore-bar .btn-secondary{min-height:30px;padding:5px 10px;white-space:nowrap}.weekly-preview-table .preview-time-axis{width:58px;min-width:58px;background:#fbfcfa;color:#31423d;font-variant-numeric:tabular-nums;white-space:nowrap}.weekly-preview-table .blank-row-time{cursor:pointer;font-weight:800}.weekly-preview-table .blank-row-time span{position:static;padding:0;background:transparent;line-height:inherit;transform:none}.weekly-preview-table td{min-width:150px;background:#fff;text-align:center;cursor:pointer}.weekly-preview-table td.empty-time-slot{background:#e7eae8;cursor:default}.weekly-preview-table td.period-time-block{position:relative;padding:0;vertical-align:middle;overflow:hidden}.weekly-preview-table .time-slot-placeholder{display:block;min-height:38px}.weekly-preview-table td.left{text-align:left}.template-course-cell-preview{display:grid;gap:3px;min-height:38px;align-content:center;color:#1d4f45;font-size:12px;font-weight:700;line-height:1.4}.weekly-preview-table td.period-time-block>.template-course-cell-preview{position:absolute;top:0;right:0;bottom:0;left:0;min-height:0;padding:10px;align-content:center}.template-course-cell-preview .template-course-cell-line:first-child{font-size:13px;font-weight:900}.template-course-cell-preview.split{gap:0;min-height:0;grid-template-rows:repeat(2,minmax(0,1fr))}.weekly-preview-table td.period-time-block>.template-course-cell-preview.split{margin:0;padding:0}.template-course-cell-preview.split .template-course-cell-line{display:grid;min-height:0;align-items:center;justify-items:center;padding:5px 8px}.weekly-preview-table td.period-time-block.left .template-course-cell-line{justify-items:start;text-align:left}.template-course-cell-preview.split .template-course-cell-line+.template-course-cell-line{border-top:1px solid #e5ebe3}.weekly-preview-table td strong,.weekly-preview-table td span,.weekly-preview-table td small{display:block}.weekly-preview-table td strong{color:#1d4f45;font-size:13px}.weekly-preview-table td span{color:#43514d;font-size:12px;margin-top:3px}.weekly-preview-table td small{color:#75827d;font-size:11px;margin-top:5px}.weekly-preview-table td.inactive{background:#f5f5f1}.weekly-preview-table td.inactive strong,.weekly-preview-table td.inactive span,.weekly-preview-table td.inactive small,.weekly-preview-table td.empty{color:#9aa39f}.blank-column-heading{cursor:pointer;text-align:center;background:#f1f5f2!important}.blank-column-heading.left{text-align:left}.blank-column-cell{background:#fff!important;cursor:pointer;min-width:150px;color:#43514d;font-size:12px;font-weight:400;text-align:center!important;vertical-align:middle!important;line-height:1.4}.blank-preview-row{cursor:pointer}.blank-row-label.selected,.blank-row-cell.selected{background:#eef8f3;box-shadow:inset 0 0 0 2px #2f7d6d}.blank-row-label span{background:#f1f2ee!important;color:#68756f!important}.blank-row-cell{background:#fff;cursor:pointer;color:#43514d;text-align:center!important;vertical-align:middle!important;font-size:12px;font-weight:400;line-height:1.4}.blank-row-cell.left{text-align:left!important}.blank-row-filler{background:#fff}.preview-column-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.preview-column-header{align-items:flex-start}.column-toggle{border:1px solid #b7d8cb;border-radius:999px;background:#eef8f3;color:#1d6b5b;padding:3px 8px;font-size:11px;font-weight:900;cursor:pointer}.column-toggle.inactive{border-color:#d6dcd8;background:#f2f4f1;color:#7a8580}.icon-action{width:22px;height:22px;display:inline-grid;place-items:center;border:1px solid #dde3dc;border-radius:5px;background:#fff;color:#52605b;font-size:14px;font-weight:900;cursor:pointer}.icon-action.danger{border-color:#f2c3bd;color:#b42318}.icon-action:disabled{opacity:.45;cursor:not-allowed}.btn-delete.full-width{width:100%}.preview-inspector{display:grid;align-content:start;gap:12px;border-left:1px solid #e5ebe3;background:#fbfcfa;padding:14px;overflow:auto}.preview-inspector h4{margin:0;color:#21342f;font-size:15px}.inspector-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.preview-inspector label{display:grid;gap:5px;color:#53615f;font-size:12px;font-weight:800}.preview-inspector input,.preview-inspector select{width:100%;min-width:0;border:1px solid #dce5df;border-radius:7px;padding:8px;background:#fff;color:#263a34;font-size:13px}.preview-inspector .checkbox-row{display:inline-flex;align-items:center}.preview-inspector .checkbox-row input{width:auto}.inspector-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.search-field{display:grid;gap:6px;margin-bottom:14px}.search-field span{color:#6d7875;font-size:11px;font-weight:700}.search-field input{border:1px solid #d9ded9;border-radius:8px;padding:9px 11px;font:inherit;color:#1f2933}.org-list-modal{display:grid;gap:6px;max-height:360px;overflow:auto}.org-list-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;border:1px solid #edf0eb;border-radius:8px;background:#fbfcfa}.org-list-row.current{border-color:#cde5d6;background:#f6fefa}.org-list-row strong{font-size:13px;color:#263a34}.org-list-row span{color:#8d9a97;font-size:11px;margin-left:6px}.btn-tag-active{border:1px solid #2f7d6d;background:#eaf7f1;color:#2f7d6d;border-radius:5px;padding:3px 9px;font-size:11px;font-weight:700;cursor:default}.btn-tag-join{border:1px solid #2f7d6d;background:#2f7d6d;color:#fff;border-radius:5px;padding:4px 10px;font-size:11px;font-weight:700;cursor:pointer}.btn-tag-join:hover{background:#246a5c}.cascade-warning{margin:0 0 14px;color:#33413d;font-size:13px;line-height:1.6}.cascade-warning strong{color:#b42318}.cascade-group{margin-bottom:12px}.cascade-label{display:block;color:#6d7875;font-size:11px;font-weight:800;margin-bottom:4px}.cascade-group ul{list-style:none;padding:0;margin:0;display:grid;gap:4px;max-height:140px;overflow:auto}.cascade-group li{font-size:12px;color:#263a34;padding:4px 8px;background:#fff1f0;border-radius:4px;border:1px solid #ffccc7}.cascade-actions{display:flex;gap:10px;margin-top:16px}.btn-danger{border:0;border-radius:8px;background:#b42318;color:#fff;padding:9px 18px;font-weight:700;font-size:13px;cursor:pointer}.btn-danger:hover:not(:disabled){background:#912018}.btn-danger:disabled{opacity:.5;cursor:not-allowed}.matrix-help{margin:-2px 0 12px;max-width:820px;color:#53615f;font-size:13px;line-height:1.55}.data-table,.course-matrix{width:100%;border-collapse:collapse;font-size:13px}.master-data-panel .data-table{table-layout:fixed}.data-table th,.data-table td,.course-matrix th,.course-matrix td{border-bottom:1px solid #e5ebe3;padding:10px;text-align:left;vertical-align:top}.data-table th,.course-matrix th{color:#53615f;font-size:12px;font-weight:900;background:#f5f8f3}.sort-header{width:100%;display:inline-flex;align-items:center;justify-content:flex-start;gap:6px;padding:0;border:0;background:transparent;color:inherit;font-size:inherit;font-weight:inherit;text-align:left}.sort-header:hover{color:#2f7d6d;background:transparent}.sort-header span{color:#2f7d6d;font-size:11px;line-height:1}.detail-form{display:grid;gap:10px}.search-combobox{position:relative;display:grid;gap:6px;min-width:0}.search-combobox-input{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px}.search-combobox-input input{width:100%}.combo-clear{padding:8px 10px;border:1px solid #d8e4dd;background:#f7faf8;color:#40524d;font-size:12px}.search-combobox-menu{position:absolute;z-index:20;top:calc(100% + 4px);left:0;right:0;display:grid;gap:4px;max-height:220px;overflow-y:auto;border:1px solid #d8e4dd;border-radius:8px;background:#fff;padding:6px;box-shadow:0 14px 30px #29312c1f}.combo-option{display:grid;gap:2px;width:100%;padding:8px 10px;border:1px solid transparent;border-radius:6px;background:transparent;color:#263a34;text-align:left}.combo-option:hover,.combo-option.active{border-color:#b9d8cd;background:#eef7f3}.combo-option strong{font-size:13px;font-weight:900}.combo-option span,.combo-empty{color:#66736f;font-size:12px;font-weight:700}.combo-empty{margin:0;padding:8px 10px}.frequency-block{display:grid;gap:8px;border:1px solid #edf0eb;border-radius:8px;background:#fff;padding:10px}.frequency-title{display:flex;align-items:center;justify-content:space-between;gap:10px}.frequency-title strong{color:#263a34;font-size:13px}.frequency-title span{color:#66736f;font-size:12px;font-weight:800;text-align:right;max-width:62%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.detail-panel .frequency-title{align-items:flex-start}.detail-panel .frequency-title span{min-width:0;max-width:170px;white-space:normal;overflow-wrap:anywhere}.week-picker,.day-picker{display:grid;gap:6px}.week-picker{grid-template-columns:repeat(7,minmax(0,1fr))}.day-picker{grid-template-columns:repeat(4,minmax(0,1fr))}.week-picker button,.day-picker button{min-height:32px;border:1px solid #d9ded9;background:#fbfcfa;color:#53615f;border-radius:6px;padding:0 6px;font-size:12px;font-weight:800}.week-picker button.active,.day-picker button.active{border-color:#2f7d6d;background:#2f7d6d;color:#fff}.week-picker button:disabled,.day-picker button:disabled,.day-picker button.disabled{border-color:#e5e9e4;background:#f2f5f1;color:#a4ada8;cursor:not-allowed;box-shadow:none}.period-select-block{display:grid;gap:8px;border:1px solid #edf0eb;border-radius:8px;background:#fbfcfa;padding:10px;min-width:0;overflow:hidden}.period-select-actions{display:flex;gap:8px;flex-wrap:wrap}.room-option-list{display:flex;flex-wrap:wrap;gap:8px}.room-option-list.compact{gap:6px}.room-search-block{display:grid;gap:8px;min-width:0}.room-search-block.disabled{opacity:.72}.room-search-block.compact{gap:7px}.room-choice-block{display:grid;gap:8px;min-width:0}.room-choice-block.disabled,.horizontal-choice-strip.disabled{opacity:.65}.horizontal-choice-strip{display:flex;align-items:center;gap:8px;min-width:0;max-width:100%;overflow-x:auto;overflow-y:hidden;padding:2px 0 5px;scrollbar-width:thin;scroll-snap-type:x proximity}.horizontal-choice-strip button,.horizontal-choice-strip .choice-empty{flex:0 0 auto;scroll-snap-align:start}.room-mode-strip{padding-bottom:3px}.choice-pill,.room-choice-pill{min-height:32px;border:1px solid #d8e4dd;border-radius:7px;background:#fff;color:#40524d;padding:0 11px;font-size:12px;font-weight:900;white-space:nowrap;transition:color .16s ease,border-color .16s ease,background .16s ease,box-shadow .16s ease,transform .16s ease}.choice-pill.active,.room-choice-pill.active{border-color:#2f7d6d;background:#2f7d6d;color:#fff}.choice-pill:not(:disabled):hover,.room-choice-pill:not(:disabled):hover{border-color:#7fb7a7;box-shadow:0 4px 12px #2f7d6d1f;transform:translateY(-1px)}.segmented-strip{position:relative;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;overflow:hidden;border:1px solid #d8e4dd;border-radius:9px;background:#f4f8f5;padding:3px;box-shadow:inset 0 1px #fffc}.segmented-strip:before{content:"";position:absolute;z-index:0;top:3px;left:3px;width:calc((100% - 6px)/2);height:calc(100% - 6px);border-radius:7px;background:#2f7d6d;box-shadow:0 6px 16px #2f7d6d38;transform:translate(0);transition:transform .22s cubic-bezier(.2,.8,.2,1)}.segmented-strip.is-second-active:before{transform:translate(100%)}.segmented-strip .choice-pill{position:relative;z-index:1;width:100%;min-height:32px;border:0;border-radius:7px;background:transparent;color:#49605a;box-shadow:none}.segmented-strip .choice-pill.active{background:transparent;color:#fff}.segmented-strip .choice-pill:not(:disabled):hover{box-shadow:none;transform:none}.choice-pill:disabled,.room-choice-pill:disabled{cursor:not-allowed}@media (prefers-reduced-motion: reduce){.choice-pill,.room-choice-pill,.segmented-strip:before{transition:none}}.choice-empty{color:#7a8782;font-size:12px;font-weight:800;padding:7px 2px}.room-usage-toggle{display:inline-flex;align-items:center;justify-content:flex-start;gap:8px;color:#263a34;font-size:13px}.room-usage-toggle input{width:16px;height:16px}.selected-room-tags{display:flex;flex-wrap:wrap;gap:6px;min-width:0}.selected-room-tags em{color:#7a8782;font-size:12px;font-style:normal;font-weight:800}.selected-room-tag{display:inline-flex;align-items:center;max-width:100%;gap:6px;border:1px solid #b9d8cd;border-radius:999px;background:#eef7f3;color:#1f5f55;padding:4px 6px 4px 9px;font-size:12px;font-weight:900;line-height:1.2}.selected-room-tag button{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;min-height:18px;border:0;border-radius:999px;background:#2f7d6d1f;color:#1f5f55;padding:0;line-height:1}.inherit-room-button{justify-self:start;min-height:30px;padding:5px 9px;font-size:12px}.room-option-chip{border:1px solid #d8e4dd;background:#fff;color:#40524d;border-radius:7px;padding:7px 10px;font-size:12px;font-weight:800}.room-option-chip.active{border-color:#2f7d6d;background:#2f7d6d;color:#fff}.lesson-editor{display:grid;gap:8px}.lesson-summary-card{display:grid;gap:10px;border:1px solid #dce8e1;border-radius:8px;background:#fbfcfa;padding:12px}.lesson-summary-card p{margin:0;color:#66736f;font-size:12px;font-weight:800;line-height:1.45}.lesson-summary-card>button{justify-self:stretch;height:36px}.lesson-editor-sheet{height:calc(100vh - 44px);min-height:680px;margin-bottom:16px}.lesson-editor-sheet-header{grid-template-columns:minmax(320px,1fr) auto}.lesson-editor-sheet-body{min-height:0;overflow-y:auto;padding:16px;background:#f8faf8}.lesson-editor-sheet .lesson-editor{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(360px,1fr));align-items:start;gap:14px}.lesson-editor-sheet .lesson-editor>.frequency-title{grid-column:1 / -1;padding:0 2px}.lesson-editor-sheet .lesson-card{min-width:0;padding:14px;box-shadow:0 6px 18px #23323c0f}.lesson-card{display:grid;gap:12px;border:1px solid #e1e8e1;border-radius:10px;background:#fff;padding:8px}.lesson-card-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;padding-bottom:8px;border-bottom:1px solid #edf2ee}.lesson-card-head input{height:34px;min-height:34px;padding:0 10px;font-size:13px;font-weight:900;background:#fbfcfa}.lesson-card-head .inline-check{min-height:30px;padding:0 4px;white-space:nowrap;font-size:12px;font-weight:900}.lesson-line{display:flex;justify-content:space-between;gap:10px;min-width:0;color:#66736f;font-size:12px;font-weight:800}.lesson-line strong{color:#263a34}.lesson-line span{text-align:right;overflow-wrap:anywhere}.lesson-card .period-select-actions,.lesson-card .room-choice-block{border:1px solid #e4ece6;border-radius:9px;background:#fbfcfa;padding:10px}.lesson-card .period-select-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.lesson-card .period-select-actions button{height:34px;min-height:34px}.lesson-card .room-choice-block.compact{display:grid;gap:10px}.lesson-actions{justify-content:flex-end;padding-top:2px}.selected-period-tags{display:flex;flex-wrap:wrap;gap:6px}.selected-period-tags span,.selected-period-tags em{border:1px solid #d8e4dd;border-radius:999px;background:#f3f8f5;color:#40524d;padding:4px 8px;font-size:11px;font-style:normal;font-weight:800;max-width:100%}.room-unavailable-sheet .bottom-sheet-header{grid-template-columns:minmax(240px,1fr) auto}.room-unavailable-body{display:grid;grid-template-rows:auto minmax(0,1fr);gap:12px;min-height:0;padding:16px 16px 40px}.course-preferred-body{grid-template-rows:auto auto minmax(0,1fr)}.room-rule-body{display:flex;flex-direction:column;gap:12px;min-height:0;overflow-y:auto;overflow-x:hidden;scrollbar-gutter:stable;overscroll-behavior:contain}.room-rule-sheet .sheet-actions button,.room-rule-sheet .sheet-footer-actions button{min-width:72px;height:34px;min-height:34px;border-radius:7px;padding:0 12px;font-size:12px;font-weight:900;line-height:1.2}.room-rule-sheet .compact-toggle{height:30px;min-height:30px;border-radius:7px;padding:0 10px;font-size:12px;font-weight:900;line-height:1.2}.room-rule-sheet .week-picker button,.room-rule-sheet .day-picker button{height:32px;min-height:32px;border-radius:7px;padding:0 8px;font-size:12px;font-weight:900;line-height:1.2}.room-rule-sheet .time-slot-rule-button{min-height:54px;padding:8px 10px}.room-rule-sheet .time-slot-rule-button span{font-size:13px;font-weight:900}.room-rule-sheet .time-slot-rule-button small{font-size:11px;font-weight:800}.preset-chip-row{display:flex;flex-wrap:wrap;gap:8px;min-width:0}.preset-chip-row .preset-chip{min-height:30px;height:30px;border:1px solid #d8e2dc;background:#fff;color:#2f5f55;border-radius:999px;padding:0 12px;font-size:12px;font-weight:900;box-shadow:0 1px 2px #23323c0a}.preset-chip-row .preset-chip:hover{border-color:#2f7d6d;background:#eff7f3}.period-batch-panel{display:grid;gap:10px;border:1px solid #e2e9e3;border-radius:8px;background:#fbfcfa;padding:10px 12px}.period-batch-panel.active{border-color:#b8d6cc;background:#f5faf7}.period-batch-panel .preset-chip-row .preset-chip{height:auto;min-height:34px;display:inline-grid;align-content:center;gap:1px;border-radius:8px;text-align:center}.period-batch-panel .preset-chip small{color:#72837d;font-size:10px;font-weight:800}.course-priority-panel,.course-candidate-panel{display:grid;gap:12px;border:1px solid #e2e9e3;border-radius:10px;background:#fbfcfa;padding:14px;box-shadow:0 1px 2px #23323c0a}.priority-choice-row{display:grid;grid-template-columns:repeat(4,minmax(140px,1fr));gap:10px}.priority-choice{display:grid;align-content:center;gap:3px;min-height:44px;border:1px solid #cfe1d8;color:#1f3b34;text-align:left;padding:7px 12px;box-shadow:0 1px 2px #23323c0d}.priority-choice strong{font-size:13px;line-height:1.1;font-weight:900}.priority-choice small{font-size:11px;color:#1f3b34b8;font-weight:800;line-height:1.15}.priority-choice.active{border-color:#1f7a68;box-shadow:inset 0 0 0 2px #1f7a68,0 5px 14px #2f7d6d29;transform:translateY(-1px)}.priority-choice.priority-0,.candidate-cell.priority-0{background:#eaf8ef}.priority-choice.priority-10,.candidate-cell.priority-10{background:#cfefdd}.priority-choice.priority-30,.candidate-cell.priority-30{background:#91d8ae}.priority-choice.priority-60,.candidate-cell.priority-60{background:#3f9b70;color:#fff}.priority-choice.priority-60 small,.candidate-cell.priority-60 small{color:#ffffffd6}.course-candidate-table-wrap{overflow:auto;border:1px solid #e2e9e3;border-radius:10px;background:#fff;max-height:min(46vh,520px)}.candidate-preset-row{display:flex;flex-wrap:wrap;gap:8px}.candidate-preset{min-height:34px;border:1px solid #d5e4dc;border-radius:8px;background:#fff;color:#24584e;display:inline-flex;align-items:center;gap:6px;padding:0 12px;box-shadow:0 1px 2px #23323c0a;transition:border-color .14s ease,background .14s ease,transform .14s ease}.candidate-preset:hover{transform:translateY(-1px);border-color:#2f7d6d;background:#f2faf6}.candidate-preset strong{font-size:12px;font-weight:900}.candidate-preset small{color:#72837d;font-size:11px;font-weight:800}.course-candidate-table{width:100%;min-width:820px;border-collapse:collapse;table-layout:fixed}.course-candidate-table th,.course-candidate-table td{border-bottom:1px solid #e7eee9;border-right:1px solid #e7eee9;padding:7px;vertical-align:middle}.course-candidate-table th:last-child,.course-candidate-table td:last-child{border-right:0}.course-candidate-table thead th{position:sticky;top:0;z-index:2;background:#eef6f1;color:#314940;font-size:13px;font-weight:900;height:38px}.course-candidate-table tbody th{width:132px;background:#f7faf8;color:#2c433c;text-align:left;position:sticky;left:0;z-index:1}.course-candidate-table tbody th strong,.course-candidate-table tbody th small{display:block}.course-candidate-table tbody th strong{font-size:13px;font-weight:900}.course-candidate-table tbody th small{margin-top:3px;color:#6b7a75;font-size:11px;font-weight:800}.candidate-cell{width:100%;min-height:46px;border:1px solid #dce7e1;background:#fff;color:#5e6d68;display:grid;place-items:center;gap:2px;transition:transform .14s ease,box-shadow .14s ease,border-color .14s ease,background .14s ease}.candidate-cell:hover:not(:disabled){transform:translateY(-1px);border-color:#2f7d6d;box-shadow:0 4px 12px #2f7d6d24}.candidate-cell.active{border-color:#1f7a68;color:#173b33;box-shadow:inset 0 0 0 2px #1f7a68}.candidate-cell span{font-size:13px;line-height:1.1;font-weight:900}.candidate-cell small{color:#1f3b34ad;font-size:11px;line-height:1.1;font-weight:800}.candidate-cell.disabled,.candidate-cell:disabled{background:#f4f6f4;color:#b2beb8;cursor:not-allowed;opacity:.65}.room-picker-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid #e2e9e3;border-radius:8px;background:#fbfcfa;padding:10px 12px}.course-preferred-summary{align-items:flex-start}.course-preferred-summary span{max-width:min(760px,64vw);text-align:right;line-height:1.5;white-space:normal}.course-preferred-warning{padding:10px 14px;margin-bottom:8px;border-radius:8px;background:#fff3e0;border:1px solid #ffcc80;color:#e65100;font-size:13px;line-height:1.5}.room-picker-summary span{color:#65736f;font-size:13px;font-weight:800}.course-week-frequency{display:grid;gap:10px;border:1px solid #e2e9e3;border-radius:8px;background:#fbfcfa;padding:12px}.course-week-frequency.collapsed{gap:0;padding:10px 12px}.frequency-title-copy{display:grid;gap:2px;min-width:0}.frequency-title-copy span{text-align:left}.room-rule-sheet .frequency-title{align-items:flex-start}.room-rule-sheet .frequency-title-copy{flex:1 1 auto}.room-rule-sheet .frequency-title-copy span{max-width:none;overflow:visible;text-overflow:clip;white-space:normal;overflow-wrap:anywhere;line-height:1.45}.room-rule-sheet .period-batch-panel .frequency-title-copy span,.room-rule-sheet .course-week-frequency .frequency-title-copy span{width:max-content;max-width:min(900px,72vw)}.compact-toggle{min-height:30px;padding:5px 10px}.course-week-frequency .week-picker{max-height:none;overflow:visible}.room-unavailable-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;min-height:0;overflow:visible}.course-preferred-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));align-content:start;padding-right:4px}.time-slot-rule-grid{flex:0 0 auto;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));align-content:start;padding-right:4px}.sheet-scroll-spacer{flex:0 0 24px;min-height:24px;pointer-events:none}.time-slot-rule-button{display:grid;place-items:center;position:relative;z-index:1;min-height:62px;border:1px solid #d8e4dd;border-radius:8px;background:#fff;color:#40524d;text-align:center}.time-slot-rule-button.active{border-color:#2f7d6d;background:#2f7d6d;color:#fff}.time-slot-rule-button.disabled,.time-slot-rule-button:disabled{opacity:.35;cursor:not-allowed;pointer-events:none}.sheet-footer-actions{display:flex;justify-content:flex-end;gap:8px;border-top:1px solid #e2e9e3;padding:12px 16px 16px;background:#fff;box-shadow:0 -8px 18px #23323c0f}.selected-rule-list{display:grid;gap:8px;min-width:0}.selected-rule-item{display:grid;grid-template-columns:minmax(0,1fr);align-items:start;gap:8px;border:1px solid #d8e4dd;border-radius:8px;background:#f7faf8;padding:8px;min-width:0}.selected-rule-copy{display:grid;gap:3px;min-width:0;line-height:1.35}.selected-rule-copy strong,.selected-rule-copy span,.selected-rule-copy small{min-width:0;white-space:normal;overflow-wrap:anywhere}.selected-rule-copy strong{color:#203a34;font-size:12px;font-weight:900}.selected-rule-copy span{color:#40524d;font-size:12px;font-weight:800}.selected-rule-copy small{color:#6a7772;font-size:11px;font-weight:800}.selected-rule-item .row-actions{justify-content:flex-end;flex-wrap:wrap}.room-unavailable-day{display:grid;align-content:start;gap:8px;border:1px solid #e2e9e3;border-radius:8px;padding:10px}.room-unavailable-day>strong{color:#253a34;font-size:14px}.room-unavailable-day button{display:grid;place-items:center;gap:2px;min-height:62px;border:1px solid #d8e4dd;background:#fff;color:#40524d;text-align:center;line-height:1.25;white-space:normal}.room-unavailable-day button span,.room-unavailable-day button small{display:block;max-width:100%}.room-unavailable-day button.active{border-color:#2f7d6d;background:#2f7d6d;color:#fff}.room-unavailable-day button.partial{border-color:#7aa99b;background:#e8f2ee;color:#285e52}.period-picker-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(78px,1fr));gap:8px;max-height:260px;overflow:auto}.period-picker-grid.compact{max-height:220px}.period-day-column{display:grid;align-content:start;gap:5px}.period-day-column>strong{color:#53615f;font-size:11px}.period-day-column button{display:grid;gap:1px;min-height:44px;padding:6px;border:1px solid #dce4dd;background:#f8faf7;color:#43514d;text-align:center}.period-day-column button.active{border-color:#2f7d6d;background:#2f7d6d;color:#fff}.period-day-column button span,.period-day-column button small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.period-day-column button span{font-size:12px;font-weight:900}.period-day-column button small{font-size:10px;opacity:.82}.planning-workbench{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:16px}.planning-mode-tabs{display:inline-flex;align-items:center;gap:6px;width:fit-content;max-width:100%;padding:4px;border:1px solid #dce8e1;border-radius:9px;background:#f7faf8;margin-bottom:12px}.planning-mode-tabs button{min-height:34px;border:0;border-radius:7px;background:transparent;color:#41514c;padding:0 14px;font-size:13px;font-weight:900;white-space:nowrap}.planning-mode-tabs button.active{background:#2f7d6d;color:#fff;box-shadow:0 5px 14px #2f7d6d24}.planning-class-workbench{display:grid;grid-template-columns:220px minmax(300px,1fr) 330px;gap:14px;align-items:start}.official-class-flow{grid-column:1 / -1;display:grid;gap:13px;min-width:0;border:1px solid #ead9ad;border-left:5px solid #d5902f;border-radius:12px;background:linear-gradient(135deg,#fffdf7,#fffaf0);padding:16px 18px;box-shadow:0 8px 24px #5f4a2312}.official-class-flow.stage-copy{border-color:#bfd8df;border-left-color:#3f8292;background:linear-gradient(135deg,#f7fcfd,#f1f8fa)}.official-class-flow.stage-adjust{border-color:#e8d5a1;border-left-color:#c98123;background:linear-gradient(135deg,#fffdf7,#fff8e8)}.official-class-flow.stage-complete{border-color:#b9d9ca;border-left-color:#2f7d6d;background:linear-gradient(135deg,#f4fbf7,#edf8f2)}.official-class-flow>header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:0}.official-class-flow>header>div:first-child{min-width:0}.official-flow-badge{display:inline-flex;align-items:center;min-height:24px;border-radius:999px;background:#5f4930;color:#fff;padding:3px 9px;font-size:10px;font-weight:900;letter-spacing:.04em}.official-class-flow.stage-copy .official-flow-badge{background:#356f7c}.official-class-flow.stage-complete .official-flow-badge{background:#2f7d6d}.official-class-flow h3{margin:8px 0 4px;color:#2d3b36;font-size:17px}.official-class-flow p{max-width:820px;margin:0;color:#68736f;font-size:12px;font-weight:700;line-height:1.65}.class-flow-progress{flex:0 0 auto;width:78px;height:78px;display:grid;place-content:center;gap:1px;border:7px solid #f0dfb4;border-radius:50%;background:#fff;text-align:center}.class-flow-progress.complete{border-color:#9dceba}.class-flow-progress strong{color:#3c4b45;font-size:18px}.class-flow-progress span{color:#7a8580;font-size:9px;font-weight:900}.official-flow-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.official-flow-steps>div{display:grid;grid-template-columns:28px minmax(0,1fr);align-items:center;gap:8px;min-width:0;border:1px solid #e2e7e3;border-radius:9px;background:#ffffffc7;padding:8px 10px}.official-flow-steps>div>span{width:26px;height:26px;display:grid;place-items:center;border-radius:50%;background:#edf0ed;color:#76817c;font-size:11px;font-weight:900}.official-flow-steps>div.active{border-color:#d4a45d;background:#fff9ec}.official-flow-steps>div.active>span{background:#c98123;color:#fff}.official-flow-steps>div.done{border-color:#bdd9cc;background:#f4faf7}.official-flow-steps>div.done>span{background:#2f7d6d;color:#fff}.official-flow-steps>div>div{min-width:0;display:grid;gap:2px}.official-flow-steps strong{color:#34453f;font-size:11px}.official-flow-steps small{overflow:hidden;color:#7a8781;font-size:9px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.class-copy-recommendation,.class-complete-callout{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid #bfd8df;border-radius:9px;background:#ffffffd1;padding:10px 12px}.class-copy-recommendation strong,.class-complete-callout strong{color:#30535a;font-size:12px}.class-copy-recommendation span,.class-complete-callout span{color:#6d7d78;font-size:11px;font-weight:700}.class-complete-callout{border-color:#b9d9ca}.class-complete-callout>div{display:grid;gap:3px}.class-complete-callout .btn-primary{flex:0 0 auto;min-height:34px;padding:7px 12px;font-size:11px}.class-missing-alert{display:grid;gap:9px;border:1px solid #efc4b7;border-radius:9px;background:#fff7f4;padding:11px 12px}.class-missing-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.class-missing-heading>div:first-child{display:grid;gap:2px}.class-missing-heading strong{color:#923f2c;font-size:12px}.class-missing-heading span{color:#8c6b61;font-size:10px;font-weight:700}.class-missing-counts{display:flex;justify-content:flex-end;gap:5px;flex-wrap:wrap}.class-missing-counts em{border-radius:999px;background:#f7ddd4;color:#8d3f2d;padding:3px 7px;font-size:9px;font-style:normal;font-weight:900}.class-missing-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.class-missing-list button{min-width:0;display:flex;align-items:center;gap:7px;border:1px solid #efd4cc;border-radius:7px;background:#fff;color:#6d453b;padding:7px 9px;font-size:10px;font-weight:800;text-align:left}.class-missing-list button:hover{border-color:#d99582;background:#fffaf8}.class-missing-list button>span{flex:0 0 auto;width:18px;height:18px;display:grid;place-items:center;border-radius:50%;background:#c75f45;color:#fff;font-size:10px;font-weight:900}.class-missing-list>small{grid-column:1 / -1;color:#8a6c64;font-size:9px;font-weight:700}.planning-class-workbench .plan-detail-panel{grid-column:3;grid-row:auto}.planning-subject-workbench{grid-template-columns:210px minmax(0,1fr)}.subject-config-stack{display:grid;gap:14px;min-width:0}.subject-config-stack>.plan-detail-panel{grid-column:auto;grid-row:auto}.subject-default-subject-item span{line-height:1.4}.subject-default-editor{min-width:0}.subject-default-summary-card{display:grid;gap:12px;border:1px solid #dce8e1;border-radius:10px;background:#fff;padding:14px}.subject-default-summary-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.subject-default-summary-heading>div{min-width:0;display:grid;gap:3px}.subject-default-summary-heading strong{color:#263a34;font-size:14px}.subject-default-summary-heading span{color:#687771;font-size:12px;font-weight:700}.subject-default-summary-heading>button{flex:0 0 auto;min-height:34px;padding:7px 11px;font-size:12px;white-space:nowrap}.subject-default-lesson-list{display:grid;gap:7px}.subject-default-lesson-row{display:grid;grid-template-columns:26px minmax(0,1fr) auto;align-items:center;gap:9px;min-width:0;border:1px solid #e5ebe6;border-radius:8px;background:#f9fbfa;padding:9px 10px}.subject-default-lesson-row>span{width:24px;height:24px;display:grid;place-items:center;border-radius:7px;background:#e6f2ec;color:#2f735d;font-size:11px;font-weight:900}.subject-default-lesson-row>div{min-width:0;display:grid;gap:2px}.subject-default-lesson-row strong,.subject-default-lesson-row small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.subject-default-lesson-row strong{color:#2c3f38;font-size:12px}.subject-default-lesson-row small{color:#74817c;font-size:11px;font-weight:700}.subject-default-lesson-row em{color:#2f7d6d;font-size:10px;font-style:normal;font-weight:900}.subject-default-summary-card>p{margin:0;color:#6b7974;font-size:11px;line-height:1.55}.subject-target-panel{min-width:0}.subject-target-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.subject-select-all{flex:0 0 auto;min-height:32px;padding:6px 10px;font-size:12px}.subject-select-all.active{border-color:#2f7d6d;background:#eaf6f0;color:#216454}.subject-target-list{display:grid;gap:9px;max-height:620px;overflow-y:auto;overflow-x:visible;padding:1px 4px 1px 1px}.subject-target-row{display:grid;gap:10px;border:1px solid #e1e8e1;border-radius:8px;background:#fff;padding:10px;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease}.subject-target-row:hover{border-color:#acd1c3;background:#f7fbf9}.subject-target-row.selected{border-color:#2f7d6d;background:#eef8f3;box-shadow:inset 0 0 0 1px #2f7d6d29}.subject-target-row-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.subject-target-selector{display:grid;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:9px;min-width:0;cursor:pointer}.subject-target-selector input{width:18px;height:18px;margin:0;accent-color:#2f7d6d}.subject-target-selector>div{min-width:0;display:grid;gap:2px}.subject-add-task{flex:0 0 auto;min-height:32px;padding:6px 10px;font-size:11px}.subject-target-row strong{color:#2c3f38;font-size:12px}.subject-target-row span{overflow:hidden;color:#6d7a75;font-size:11px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.subject-teaching-task-list{display:grid;gap:10px;padding-left:29px}.subject-teaching-task{display:grid;gap:10px;min-width:0;border:1px solid #e4ebe6;border-radius:9px;background:#fbfcfb;padding:10px}.subject-target-row.selected .subject-teaching-task{border-color:#c9dfd5;background:#fff}.subject-task-heading,.subject-task-heading>div,.subject-task-field,.subject-task-room-field{min-width:0}.subject-task-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.subject-task-heading>div{display:flex;align-items:baseline;gap:8px}.subject-task-heading>div>span{color:#708078;font-size:10px}.subject-existing-task{flex:0 0 auto;border-radius:999px;background:#e7f2ed;color:#2f735d!important;padding:3px 7px;font-size:9px!important;font-weight:900}.subject-remove-task{min-height:28px;padding:4px 8px;font-size:10px}.subject-task-fields{display:grid;grid-template-columns:minmax(220px,.85fr) minmax(330px,1.15fr);align-items:start;gap:12px}.subject-task-field{min-width:0;display:grid;gap:6px}.subject-task-field>span,.subject-task-field-heading>span{color:#687771;font-size:10px;font-weight:900}.subject-task-field-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}.subject-task-field-heading em{color:#76847e;font-size:10px;font-style:normal;font-weight:800}.subject-task-fields .search-combobox-input input{min-height:34px;font-size:11px}.subject-task-fields .search-combobox-menu{z-index:18;max-height:230px}.subject-room-mode{padding:0}.subject-room-mode .choice-pill{min-height:29px;padding:0 9px;font-size:10px}.subject-room-tags{min-height:24px}.subject-room-tags .selected-room-tag{font-size:10px}.subject-apply-note{display:grid;gap:3px;border:1px solid #e2e9e4;border-radius:8px;background:#f8faf9;padding:9px 10px}.subject-apply-note strong{color:#3f504a;font-size:11px}.subject-apply-note span{color:#718079;font-size:10px;font-weight:700;line-height:1.5}.subject-target-panel .subject-apply-button{width:100%;min-height:38px}.planning-class-panel,.subject-plan-panel{display:grid;align-content:start;gap:10px}.class-list,.subject-plan-list,.task-switcher{display:grid;gap:8px}.class-list.compact{gap:6px}.class-list-item,.subject-plan-row,.task-switcher-item{width:100%;min-width:0;border:1px solid #e1e8e1;border-radius:8px;background:#fff;color:#33413d;text-align:left;transition:border-color .16s ease,background .16s ease,box-shadow .16s ease}.class-list-item{display:grid;gap:3px;padding:10px 11px}.class-list-item strong,.subject-plan-row strong,.task-switcher-item strong{color:#263a34;font-size:13px;font-weight:900}.class-list-item span,.subject-plan-row span,.task-switcher-item span,.task-editor-heading span{color:#6d7875;font-size:12px;font-weight:700}.class-list-item.active,.subject-plan-row.active,.task-switcher-row.active .task-switcher-item{border-color:#2f7d6d;background:#eef8f3;box-shadow:inset 0 0 0 1px #2f7d6d}.class-list-item.complete:not(.active){border-color:#bdd9cc;background:#f5faf7}.class-list-item.complete span{color:#2f735d}.class-list-item.attention:not(.active) span{color:#a35b34}.other-class-block{display:grid;gap:8px;padding-top:4px}.planning-import-card,.lesson-import-card{display:grid;gap:8px;border:1px solid #dce8e1;border-radius:8px;background:#f8fbf8;padding:10px}.planning-import-card>div,.lesson-import-card .frequency-title{display:grid;gap:2px}.planning-import-card strong,.lesson-import-card strong{color:#263a34;font-size:13px;font-weight:900}.planning-import-card span,.lesson-import-card span{color:#6d7875;font-size:12px;font-weight:700}.planning-import-card select,.import-inline-row select{min-width:0;width:100%;height:36px;border:1px solid #d5dfd8;border-radius:8px;background:#fff;color:#1f2933;font-size:13px;font-weight:700;padding:0 10px}.planning-import-card .btn-secondary,.import-inline-row .btn-secondary{min-height:36px;font-size:13px}.subject-import-card{grid-template-columns:minmax(0,1fr) auto;align-items:end;margin-bottom:12px}.subject-import-card>div{grid-column:1 / -1;min-width:0;align-self:center}.subject-import-card strong,.subject-import-card span{display:block;overflow-wrap:anywhere;line-height:1.45}.subject-import-card .btn-secondary{white-space:nowrap}.import-inline-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.subject-plan-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:10px 12px}.subject-plan-row>div{display:grid;gap:3px;min-width:0}.subject-plan-row strong,.subject-plan-row span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.subject-plan-row em,.subject-plan-row small{font-style:normal;font-size:12px;font-weight:900;white-space:nowrap}.subject-plan-row em{color:#2f7d6d}.subject-plan-row small{color:#7a8782;border:1px solid #e1e8e1;border-radius:999px;padding:3px 8px}.subject-plan-row.configured small{color:#1f5f55;border-color:#b9d8cd;background:#eef7f3}.subject-plan-row.incomplete small{color:#9b4935;border-color:#ecc7bc;background:#fff5f2}.subject-plan-row.complete small{color:#1f5f55;border-color:#b9d8cd;background:#eef7f3}.teacher-course-picker{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:8px;align-items:end;border:1px solid #dce8e1;border-radius:8px;background:#f8fbf8;padding:10px}.teacher-course-picker label{display:grid;gap:5px;min-width:0;color:#485852;font-size:12px;font-weight:900}.teacher-course-picker select{width:100%;min-width:0;height:36px;border:1px solid #d5dfd8;border-radius:8px;background:#fff;color:#1f2933;padding:0 10px;font-size:13px;font-weight:800}.teacher-course-picker button{min-height:36px;white-space:nowrap}.teacher-plan-groups{display:grid;gap:12px}.teacher-plan-group{display:grid;gap:8px}.teacher-plan-group-title{color:#2f7d6d;font-size:12px;font-weight:900}.teacher-plan-row{grid-template-columns:minmax(0,1fr) auto auto}.locked-teacher-card{display:grid;gap:4px;border:1px solid #dce8e1;border-radius:8px;background:#f5faf7;padding:10px 12px}.locked-teacher-card>div{display:flex;align-items:center;justify-content:space-between;gap:10px}.locked-teacher-card strong,.locked-teacher-card span{font-size:13px;font-weight:900;color:#263a34}.locked-teacher-card small{color:#6d7875;font-size:12px;font-weight:700}.task-editor-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:start}.task-editor-heading>div{display:grid;gap:2px;min-width:0}.task-switcher-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px;align-items:stretch}.task-switcher-item{display:grid;gap:2px;padding:8px 9px}.task-switcher-item.add{border-style:dashed;color:#2f7d6d;font-size:12px;font-weight:900;text-align:center}.task-switcher-item.add.active{border-style:solid;border-color:#2f7d6d;background:#eef8f3;box-shadow:inset 0 0 0 1px #2f7d6d}.task-switcher-item.add span{justify-self:center}.task-switcher-row .btn-delete{min-height:34px;padding:0 9px;font-size:12px}.matrix-panel{grid-column:1}.plan-detail-panel{grid-column:2;grid-row:1 / span 2;display:grid;align-self:start;align-content:start;gap:10px}.plan-detail-panel .detail-form{align-content:start;gap:8px}.plan-detail-panel .detail-form label{gap:5px}.plan-detail-panel .period-select-block,.plan-detail-panel .frequency-block,.plan-detail-panel .room-choice-block,.plan-detail-panel .room-search-block{gap:6px}.plan-detail-panel .period-select-block{padding:8px}.plan-detail-panel .detail-form select,.plan-detail-panel .detail-form input,.plan-detail-panel .search-combobox-input input,.plan-detail-panel .combo-clear{height:38px;min-height:38px;padding-top:0;padding-bottom:0;font-size:13px;line-height:1.2}.plan-detail-panel .combo-clear{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap}.plan-detail-panel .detail-form>.plan-save-button{width:100%;height:38px;min-height:38px;max-height:38px;padding:0 14px;align-self:start;display:inline-flex;align-items:center;justify-content:center;line-height:1;font-size:13px}.course-save-notice{margin:-2px 0 0;padding:9px 10px;border:1px solid #d9ebe5;border-radius:8px;background:#f1faf6;color:#24735f;font-size:12px;font-weight:700;line-height:1.35}.plan-detail-panel .lesson-card-head input{height:34px;min-height:34px;padding:0 10px}.plan-detail-panel .btn-secondary,.plan-detail-panel .row-actions button,.plan-detail-panel .period-select-actions button{min-height:32px;padding:0 10px;font-size:12px;line-height:1.2}.task-list-panel{grid-column:1}.matrix-scroll{max-width:100%;overflow-x:auto;overflow-y:hidden;border:1px solid #e5ebe3;border-radius:8px;background:#fff;scrollbar-gutter:stable;scroll-behavior:smooth}.course-matrix{width:max-content;min-width:100%}.course-matrix th:first-child{position:sticky;left:0;z-index:3;min-width:82px;max-width:96px;background:#f5f8f3}.course-matrix td,.course-matrix th:not(:first-child){min-width:96px;max-width:112px}.course-matrix td{background:#fff}.course-matrix tbody th:first-child{z-index:2;background:#fbfcfa}.matrix-cell{width:100%;min-height:62px;display:grid;align-content:center;gap:3px;place-items:center;border:1px solid #e1e6df;border-radius:7px;background:#f5f7f4;color:#75807b;padding:7px 8px;overflow:hidden;text-align:center}.matrix-cell.configured{border-color:#cad8d2;background:#fff;color:#33413d}.matrix-cell.active{border-color:#2f7d6d;background:#eef8f3;box-shadow:inset 0 0 0 1px #2f7d6d;color:#1d4f45}.matrix-cell strong,.matrix-cell span,.matrix-cell small{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.matrix-cell strong{color:#1d4f45;font-size:13px;line-height:1.2}.matrix-cell-teacher{font-size:13px;font-weight:900}.matrix-cell span,.matrix-cell small{font-size:12px;color:#66736f;line-height:1.25}.matrix-cell small{color:#4f5e5a}.matrix-cell-meta{font-weight:700}.matrix-cell-empty{align-self:center;justify-self:center;color:#9aa39f;font-weight:800}.matrix-cell.active .matrix-cell-empty{color:#1d4f45}.matrix-scroll-actions{display:inline-flex;gap:6px;align-items:center}.matrix-scroll-actions button{width:34px;height:32px;display:inline-grid;place-items:center;padding:0;font-size:18px;line-height:1}.constraint-workbench{display:grid;grid-template-columns:230px minmax(320px,.9fr) minmax(320px,1.1fr);gap:16px;align-items:start}.constraint-form{display:grid;gap:10px;border:1px solid #edf0eb;border-radius:8px;background:#fbfcfa;padding:14px}.form-hint{color:#8d9a97;font-size:11px;font-weight:600}.constraint-layout-3col{display:grid;grid-template-columns:230px minmax(0,1fr) 280px;gap:16px;align-items:start}.col-title{margin:0 0 12px;color:#263a34;font-size:13px;font-weight:800}.auto-strip{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:10px 14px;margin-bottom:16px;border-radius:8px;background:#eef8f3;border:1px solid #cde5d6}.auto-strip-label{color:#2f7d6d;font-size:12px;font-weight:900;margin-right:4px}.auto-strip-tag{color:#1a4a3a;font-size:11px;font-weight:700;background:#d5ece2;padding:3px 8px;border-radius:4px;cursor:default}.auto-strip-note{color:#7da892;font-size:11px;margin-left:auto}.template-chips{display:grid;gap:6px}.template-chip{display:flex;align-items:flex-start;gap:9px;text-align:left;border:1px solid #dde3dc;background:#fbfcfa;color:#33413d;border-radius:8px;padding:10px 11px;cursor:pointer;transition:border-color .15s,background .15s,box-shadow .15s}.template-chip:hover{border-color:#2f7d6d;background:#f2faf6}.template-chip.active{border-color:#2f7d6d;background:#eaf7f1;box-shadow:0 0 0 1px #2f7d6d}.chip-badge{display:grid;place-items:center;width:24px;height:24px;border-radius:5px;background:#e8f0eb;color:#2f7d6d;font-size:10px;font-weight:900;flex-shrink:0}.template-chip.active .chip-badge{background:#2f7d6d;color:#fff}.chip-body{display:grid;gap:1px;min-width:0}.chip-body strong{font-size:12px;color:#263a34}.chip-body small{color:#66736f;font-size:11px;line-height:1.3}.constraint-form-card{border:1px solid #dde3dc;border-radius:10px;background:#fff;padding:18px;margin-bottom:14px}.constraint-form-v{display:grid;gap:12px}.form-field{display:grid;gap:4px}.field-label{color:#6d7875;font-size:11px;font-weight:800;text-transform:uppercase}.form-field input,.form-field select{border:1px solid #d9ded9;border-radius:8px;padding:9px 11px;color:#1f2933;background:#fff;font:inherit;min-width:0}.form-inline-row{display:flex;align-items:center;gap:14px}.penalty-row{display:flex;align-items:center;gap:6px}.input-sm{width:64px;padding:6px 8px!important}.btn-submit{justify-self:start;background:#2f7d6d;color:#fff;border:0;border-radius:8px;padding:9px 18px;font-weight:700;font-size:13px;cursor:pointer;margin-top:2px}.btn-submit:disabled{opacity:.5;cursor:not-allowed}.custom-list-box{border:1px solid #dde3dc;border-radius:10px;background:#fff;padding:18px}.list-heading{margin:0 0 10px;color:#53615f;font-size:12px;font-weight:800}.custom-list{list-style:none;display:grid;gap:6px;padding:0;margin:0;max-height:260px;overflow:auto}.custom-list-item{border:1px solid #edf0eb;border-radius:8px;background:#fbfcfa;padding:10px 12px}.custom-list-body{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.custom-list-main{display:grid;gap:2px;min-width:0}.custom-list-main strong{font-size:12px;color:#263a34;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.custom-list-meta{color:#8d9a97;font-size:11px}.constraint-toolbar{display:grid;grid-template-columns:minmax(240px,1fr) 140px 140px 76px;gap:10px;align-items:center;margin-bottom:14px}.constraint-toolbar input,.constraint-toolbar select{height:38px;border:1px solid #d9ded9;border-radius:8px;background:#fff;color:#1f2933;font:inherit;padding:0 11px;min-width:0}.constraint-new-button{width:100%;height:38px;min-height:38px;padding:0 14px;font-size:inherit;line-height:1}.constraint-workbench-v2{display:grid;grid-template-columns:minmax(360px,.95fr) minmax(360px,1.05fr);gap:14px;align-items:start}.constraint-list-panel,.constraint-detail-panel,.constraint-editor-panel{border:1px solid #dde3dc;border-radius:10px;background:#fff;padding:14px}.list-panel-head,.constraint-detail-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:10px}.list-panel-head h3,.constraint-detail-head h3{margin:0;color:#263a34;font-size:14px;font-weight:900}.list-panel-head span,.constraint-detail-head span{color:#7a8782;font-size:12px;font-weight:700}.constraint-list-v2{display:grid;gap:7px;max-height:620px;overflow:auto;padding-right:2px}.constraint-row-v2{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 10px;width:100%;border:1px solid #e1e8e1;border-radius:8px;background:#fbfcfa;color:#33413d;text-align:left;padding:10px 11px;cursor:pointer;transition:border-color .16s ease,background .16s ease,box-shadow .16s ease}.constraint-row-v2:hover{border-color:#9ac8b8;background:#f3faf6}.constraint-row-v2.active{border-color:#2f7d6d;background:#eef8f3;box-shadow:inset 0 0 0 1px #2f7d6d}.constraint-row-v2.auto{background:#f8fbf9}.constraint-row-v2>div{display:grid;gap:3px;min-width:0}.constraint-row-v2 strong,.constraint-row-v2 span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.constraint-row-v2 strong{color:#263a34;font-size:13px;font-weight:900}.constraint-row-v2 span,.constraint-row-v2 em{color:#6d7875;font-size:12px;font-style:normal;font-weight:700}.constraint-row-v2 em{grid-column:1 / -1;white-space:normal}.constraint-row-v2 small{justify-self:end;color:#1f5f55;border:1px solid #b9d8cd;border-radius:999px;background:#eef7f3;padding:3px 8px;font-size:11px;font-weight:900;white-space:nowrap}.constraint-row-v2.auto small{color:#66736f;border-color:#d9ded9;background:#f5f7f4}.constraint-detail-card{display:grid;gap:12px}.constraint-detail-grid{display:grid;gap:8px;margin:0}.constraint-detail-grid div{display:grid;grid-template-columns:72px minmax(0,1fr);gap:10px;padding:8px 0;border-bottom:1px solid #edf0eb}.constraint-detail-grid dt{color:#7a8782;font-size:12px;font-weight:800}.constraint-detail-grid dd{margin:0;color:#263a34;font-size:12px;font-weight:700;min-width:0}.constraint-related-list{display:flex;flex-wrap:wrap;gap:6px}.constraint-related-list h4{width:100%;margin:0 0 2px;color:#53615f;font-size:12px;font-weight:900}.constraint-related-list span,.constraint-related-list small{border:1px solid #dfe8e2;border-radius:999px;background:#f7faf8;color:#40504b;padding:4px 8px;font-size:11px;font-weight:700}.template-chips.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.template-chip.compact{align-items:center;padding:7px 8px}.template-chip.compact strong{font-size:12px}.constraint-editor-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.constraint-editor-modal{max-width:1080px}.constraint-editor-panel.in-modal{border:0;padding:0}.constraint-editor-panel.in-modal .constraint-form-card{border:0;padding:0;margin:0}.constraint-editor-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px;padding:4px;border:1px solid #dde3dc;border-radius:10px;background:#f7faf8}.constraint-editor-tabs button{min-height:34px;border:0;border-radius:8px;background:transparent;color:#53615f;padding:0 14px;font:inherit;font-size:13px;font-weight:900;cursor:pointer}.constraint-editor-tabs button.active{background:#2f7d6d;color:#fff}.constraint-template-workspace{display:grid;gap:14px}.scenario-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.scenario-card{display:grid;gap:6px;min-height:86px;border:1px solid #dfe8e2;border-radius:10px;background:#fbfcfa;color:#33413d;padding:12px;text-align:left;cursor:pointer;transition:background .16s ease,border-color .16s ease,box-shadow .16s ease}.scenario-card:hover,.scenario-card.active{border-color:#2f7d6d;background:#eef8f3}.scenario-card.active{box-shadow:inset 0 0 0 1px #2f7d6d}.scenario-card strong{color:#263a34;font-size:14px;font-weight:900}.scenario-card span{color:#66736f;font-size:12px;line-height:1.45;font-weight:700}.ai-constraint-workspace{display:grid;gap:0;border:1px solid #dde5df;border-radius:8px;background:#fff}.ai-constraint-step,.ai-constraint-result{display:grid;gap:14px;padding:18px}.ai-constraint-step+.ai-constraint-step,.ai-constraint-result{border-top:1px solid #e4e9e5}.ai-constraint-step-head,.ai-constraint-result-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.ai-constraint-step-head>span{display:grid;flex:0 0 28px;width:28px;height:28px;place-items:center;border-radius:50%;background:#2f7d6d;color:#fff;font-size:13px;font-weight:900}.ai-constraint-step-head>div,.ai-constraint-result-head>div{flex:1;min-width:0}.ai-constraint-step-head strong,.ai-constraint-result-head h4,.ai-clarification-panel h4{margin:0;color:#263a34;font-size:16px;font-weight:900}.ai-constraint-step-head p,.ai-constraint-result-head p,.ai-clarification-panel>p,.ai-constraint-empty-result p{margin:4px 0 0;color:#66736f;font-size:12px;line-height:1.5}.ai-constraint-result-head .ai-draft-warning{margin-top:10px;padding:10px 12px;border-left:3px solid #c27a16;background:#fff8e8;color:#7a4b08}.ai-constraint-source-switch,.constraint-strength-control{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;padding:4px;border:1px solid #dde5df;border-radius:8px;background:#f5f8f6}.ai-constraint-source-switch button,.constraint-strength-control button{min-height:38px;border:0;border-radius:6px;background:transparent;color:#53615f;font:inherit;font-size:12px;font-weight:900;cursor:pointer}.ai-constraint-source-switch button.active,.constraint-strength-control button.active{background:#2f7d6d;color:#fff}.ai-scenario-grid,.ai-constraint-choice-grid,.ai-template-picker,.ai-clarification-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.ai-constraint-choice-grid>button,.ai-template-picker>button{display:grid;gap:5px;min-height:78px;border:1px solid #dfe8e2;border-radius:8px;background:#fbfcfa;color:#33413d;padding:12px;text-align:left;cursor:pointer}.ai-constraint-choice-grid>button.active,.ai-template-picker>button.active{border-color:#2f7d6d;background:#eef8f3;box-shadow:inset 0 0 0 1px #2f7d6d}.ai-constraint-choice-grid strong,.ai-template-picker strong{font-size:13px}.ai-constraint-choice-grid span,.ai-template-picker span,.ai-template-picker small{color:#66736f;font-size:11px;line-height:1.45}.constraint-strength-control{grid-template-columns:repeat(2,minmax(0,1fr))}.constraint-strength-control button,.constraint-penalty-options button{display:grid;gap:2px;padding:9px 12px;text-align:left}.constraint-strength-control span,.constraint-penalty-options span{font-size:11px;font-weight:700}.constraint-penalty-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.constraint-penalty-options button{min-height:58px;border:1px solid #dfe8e2;border-radius:8px;background:#fff;color:#33413d;font:inherit;cursor:pointer}.constraint-penalty-options button.active{border-color:#2f7d6d;background:#eef8f3}.ai-scope-editor{display:grid;gap:0;overflow:hidden;border:1px solid #cfdcd5;border-radius:8px;background:#fff;box-shadow:0 8px 24px #23323c0f;transition:border-color .16s ease,box-shadow .16s ease}.ai-scope-editor:focus-within{border-color:#2f7d6d;box-shadow:0 0 0 3px #2f7d6d1f,0 10px 26px #23323c14}.ai-scope-editor-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:13px 15px 10px;background:#f8faf8}.ai-scope-editor-head>div{display:grid;gap:3px;min-width:0}.ai-scope-editor-head strong{color:#263a34;font-size:13px;font-weight:900}.ai-scope-editor-head span,.ai-scope-editor-head small{color:#70807a;font-size:11px;line-height:1.45;font-weight:700}.ai-scope-editor-head small{flex:0 0 auto;padding-top:1px;white-space:nowrap}.ai-scope-textarea{width:100%;min-height:116px;resize:vertical;border:0;border-radius:0;background:#fff;color:#263a34;padding:14px 15px;font:inherit;font-size:14px;line-height:1.7;outline:none;box-shadow:none}.ai-scope-textarea::placeholder{color:#98a59f}.ai-scope-editor-footer{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:end;border-top:1px solid #e5ebe7;background:#fbfcfb;padding:11px 12px}.ai-scope-suggestions{display:grid;gap:7px;min-width:0}.ai-scope-suggestions>span{color:#70807a;font-size:11px;font-weight:800}.ai-scope-examples{display:flex;flex-wrap:wrap;gap:7px}.ai-scope-examples button{border:1px solid #d8e4dd;border-radius:999px;background:#fff;color:#2f6d60;padding:6px 11px;font:inherit;font-size:11px;font-weight:800;cursor:pointer;transition:border-color .14s ease,background .14s ease}.ai-scope-examples button:hover{border-color:#78aa9d;background:#eef7f3}.ai-resolve-button{align-self:end;justify-self:end;min-width:180px;min-height:40px}.ai-clarification-panel,.ai-constraint-empty-result{display:grid;gap:10px}.ai-clarification-grid article{display:grid;gap:9px;border:1px solid #dfe8e2;border-radius:8px;background:#f8faf8;padding:13px}.ai-clarification-grid article p,.ai-clarification-grid article small{margin:0;color:#66736f;font-size:11px;line-height:1.5}.ai-clarification-grid dl{display:flex;gap:16px;margin:0}.ai-clarification-grid dl>div{display:grid;gap:2px}.ai-clarification-grid dt{color:#7a8782;font-size:10px}.ai-clarification-grid dd{margin:0;color:#263a34;font-size:13px;font-weight:900}.ai-constraint-group-table-wrap{width:100%}.ai-constraint-group-table{width:100%;border-collapse:collapse;table-layout:fixed}.ai-constraint-group-table th,.ai-constraint-group-table td{border-bottom:1px solid #e2e8e3;padding:9px 8px;color:#33413d;font-size:11px;line-height:1.45;text-align:left;vertical-align:top;overflow-wrap:anywhere}.ai-constraint-group-table th{background:#f3f7f4;color:#53615f;font-weight:900}.ai-constraint-group-table th:first-child,.ai-constraint-group-table td:first-child{width:46px;text-align:center}.ai-constraint-group-table th:nth-child(5){width:24%}.ai-constraint-lesson-tags{display:flex;flex-wrap:wrap;gap:4px}.ai-constraint-lesson-tags span,.constraint-compile-badge{border-radius:999px;background:#e8f5ef;color:#286b5d;padding:3px 7px;font-size:10px;font-weight:800}.constraint-compile-badge.pending{background:#fff3dc;color:#8a5b00}.ai-constraint-warnings{border-left:3px solid #d79a24;background:#fffaf0;padding:10px 12px}.ai-constraint-warnings ul,.ai-constraint-empty-result ul{margin:7px 0 0;padding-left:18px;color:#6e6250;font-size:11px;line-height:1.6}.ai-constraint-confirm-bar{position:sticky;z-index:2;bottom:-1px;display:flex;justify-content:flex-end;gap:8px;margin:2px -18px -18px;border-top:1px solid #dfe5e0;background:#fffffffa;padding:12px 18px}.template-library-toolbar{display:grid;grid-template-columns:minmax(220px,1fr) 150px auto;gap:10px;align-items:center}.template-library-toolbar input,.template-library-toolbar select{height:38px;border:1px solid #d9ded9;border-radius:8px;background:#fff;color:#1f2933;font:inherit;padding:0 11px;min-width:0}.template-library-list{display:grid;gap:10px;max-height:440px;overflow:auto}.template-library-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;border:1px solid #dfe8e2;border-radius:10px;background:#fbfcfa;padding:12px}.template-library-card>div:first-child{display:grid;gap:4px;min-width:0}.template-library-card strong{color:#263a34;font-size:14px;font-weight:900}.template-library-card span{color:#66736f;font-size:12px;line-height:1.45;font-weight:700}.template-library-card small{color:#8d9a97;font-size:11px;font-weight:800}.template-library-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.itc-preview-details{border:1px solid #dfe8e2;border-radius:8px;background:#f7faf8;padding:8px 10px}.itc-preview-details summary{color:#53615f;font-size:12px;font-weight:900;cursor:pointer}.itc-preview-details pre{overflow:auto;margin:8px 0 0;color:#33413d;font-size:12px;line-height:1.45}.constraint-transfer{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:10px;align-items:stretch}.transfer-pane{display:grid;grid-template-rows:auto auto minmax(180px,1fr);gap:8px;min-width:0;border:1px solid #dde3dc;border-radius:10px;background:#fbfcfa;padding:10px}.transfer-pane.lesson-directory-pane{grid-template-rows:auto auto auto minmax(150px,1fr)}.transfer-pane-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.transfer-pane-head strong{color:#263a34;font-size:12px;font-weight:900}.transfer-pane-head span{color:#7a8782;font-size:11px;font-weight:800}.transfer-pane input{height:34px;border:1px solid #d9ded9;border-radius:8px;background:#fff;color:#1f2933;font:inherit;font-size:12px;padding:0 10px;min-width:0}.constraint-lesson-directory{display:grid;gap:7px;border:1px solid #e3e9e4;border-radius:8px;background:#f4f8f5;padding:8px}.constraint-lesson-directory label{display:grid;grid-template-columns:52px minmax(0,1fr);align-items:center;gap:8px;min-width:0}.constraint-lesson-directory label>span{color:#527067;font-size:11px;font-weight:900;white-space:nowrap}.constraint-lesson-directory select{width:100%;min-width:0;height:34px;border:1px solid #d4ddd6;border-radius:7px;background:#fff;color:#263a34;font:inherit;font-size:12px;padding:0 30px 0 9px}.constraint-lesson-directory select:disabled{background:#edf1ee;color:#98a39e;cursor:not-allowed}.constraint-directory-hint{display:flex;align-items:center;min-height:34px;margin:0;border:1px dashed #d7e0da;border-radius:8px;color:#7a8782;font-size:11px;padding:7px 9px}.transfer-list{display:grid;align-content:start;gap:6px;max-height:230px;overflow:auto;min-width:0}.transfer-item{width:100%;border:1px solid #e1e8e1;border-radius:8px;background:#fff;color:#33413d;padding:7px 8px;text-align:left;font-size:12px;font-weight:700;line-height:1.35;cursor:pointer}.transfer-item:hover{border-color:#2f7d6d;background:#f2faf6}.transfer-item.selected{border-color:#b9d8cd;background:#eef8f3}.lesson-transfer-item{display:grid;gap:2px}.lesson-transfer-item strong{color:#263a34;font-size:12px;line-height:1.35;overflow-wrap:anywhere}.lesson-transfer-item small{color:#74827d;font-size:10px;font-weight:700;line-height:1.35;overflow-wrap:anywhere}.transfer-actions{display:grid;align-content:center;gap:8px;min-width:86px}.transfer-actions .btn-secondary{height:32px;padding:0 9px;font-size:12px;white-space:nowrap}.transfer-empty{margin:0;color:#8d9a97;font-size:12px;font-weight:700}.btn-delete{background:transparent;color:#b42318;border:1px solid #ffccc7;padding:4px 9px;font-weight:600;border-radius:5px;cursor:pointer;white-space:nowrap;flex-shrink:0}.btn-delete:hover:not(:disabled){background:#fff1f0}.btn-delete:disabled{opacity:.35;cursor:not-allowed}.preview-card{border:1px solid #dde3dc;border-radius:10px;background:#fff;padding:18px}.preview-summary{margin:0 0 12px;color:#263a34;font-size:14px;line-height:1.5;font-weight:600}.preview-details{list-style:none;display:grid;gap:6px;padding:0;margin:0 0 12px}.preview-details li{color:#5b6763;font-size:12px;line-height:1.4}.preview-details strong{color:#263a34}.preview-empty{color:#8d9a97;font-size:12px;line-height:1.5;margin:0 0 12px}.advanced-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;border:1px solid #e0e5de;background:#f8faf6;color:#53615f;border-radius:6px;padding:7px 11px;font-size:11px;font-weight:700;cursor:pointer}.advanced-toggle:hover{background:#eef3ea}.toggle-arrow{color:#8d9a97;font-size:10px}.advanced-content{margin-top:10px;padding:10px;border-radius:6px;background:#f4f6f1}.preview-line{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:4px 0}.preview-line span{color:#8d9a97;font-size:11px;font-weight:600}.preview-line code{color:#2f7d6d;font-size:11px;background:#eaf7f1;padding:2px 6px;border-radius:3px}.itc-code{margin-top:8px;font-size:10px;color:#53615f;background:#fff;border:1px solid #e5ebe3;border-radius:5px;padding:10px;white-space:pre-wrap;word-break:break-word;max-height:180px;overflow:auto}.form-hint{color:#8d9a97;font-size:10px;font-weight:600}.task-row{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.task-info{display:grid;gap:3px;min-width:0}.task-info strong{color:#263a34;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-info span{color:#6d7875;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.preview-line{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid #e5ebe3;padding:9px 0}.preview-line span{color:#66736f;font-size:12px;font-weight:800}.preview-line strong{color:#263a34;font-size:13px;text-align:right}.master-block{min-width:0}.master-block h3{margin:0 0 10px;color:#263a34;font-size:15px}.inline-form{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;margin-bottom:12px}.inline-form button{width:100%}.master-block ul{list-style:none;display:grid;gap:6px;padding:0;margin:0;max-height:210px;overflow:auto}.master-block li{display:grid;gap:2px;border:1px solid #edf0eb;border-radius:8px;padding:8px 9px;background:#fbfcfa}.master-block li strong,.master-block li span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.master-block li strong{color:#263a34;font-size:13px}.master-block li span{color:#6d7875;font-size:12px}.planning-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.planning-block{min-width:0}.planning-block h3{margin:0 0 10px;color:#263a34;font-size:15px}.select-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:14px}.select-form button{grid-column:1 / -1}.planning-list{list-style:none;display:grid;gap:8px;padding:0;margin:0;max-height:260px;overflow:auto}.planning-list li{display:grid;gap:3px;border:1px solid #edf0eb;border-radius:8px;padding:9px 10px;background:#fbfcfa}.planning-list li strong,.planning-list li span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.planning-list li strong{color:#263a34;font-size:13px}.planning-list li span{color:#6d7875;font-size:12px}.constraint-grid{display:grid;grid-template-columns:minmax(320px,.9fr) minmax(0,1.1fr);gap:18px}.checkbox-row{display:flex;align-items:center;gap:8px;min-height:42px;color:#33413d}.checkbox-row input{width:18px;height:18px}.constraint-list{max-height:236px}.panel.wide{grid-column:1 / -1}.runs-dashboard{display:grid;grid-template-columns:minmax(300px,1.2fr) minmax(260px,.9fr) minmax(260px,.9fr);gap:16px;align-items:stretch}.run-card{display:grid;align-content:start;gap:14px;min-height:230px;border:1px solid #dde3dc;border-radius:8px;background:#fff;padding:18px;box-shadow:0 10px 28px #1f29330f}.run-card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.run-card-heading div{display:grid;gap:5px}.run-card-heading span,.run-stat-grid span{color:#66736f;font-size:12px;font-weight:800}.run-card-heading h2{margin:0;color:#1f2933;font-size:21px;line-height:1.2}.run-card-heading>strong{flex:0 0 auto;border:1px solid #d9ebe4;border-radius:999px;background:#f0faf6;color:#2f7d6d;padding:6px 9px;font-size:12px;white-space:nowrap}.run-card p{color:#52615d;font-size:13px;line-height:1.6}.run-data-overview-sheet,.project-import-sheet{height:75vh;min-height:560px}.run-data-sheet-header,.project-import-header{grid-template-columns:minmax(240px,1fr) auto auto}.run-data-sheet-header h2,.project-import-header h2{margin:2px 0 0;color:#1f2933;font-size:20px;line-height:1.25}.run-data-sheet-header p,.project-import-header p{margin:6px 0 0;color:#5a6b65;font-size:13px;line-height:1.5}.run-data-sheet-status,.project-import-version-pill{justify-self:end;display:grid;gap:3px;border:1px solid #dce7e1;border-radius:8px;background:#f7faf6;padding:10px 12px;min-width:190px}.run-data-sheet-status.ready{border-color:#bfe3d6;background:#eef9f4}.run-data-sheet-status strong,.project-import-version-pill{color:#21342f;font-size:14px;font-weight:900}.run-data-sheet-status span{color:#66736f;font-size:12px;font-weight:800}.run-data-overview-body,.project-import-body{display:grid;align-content:start;gap:14px;overflow:auto;padding:16px;background:#fbfcfa}.run-overview-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.run-overview-stat-card{display:grid;gap:4px;border:1px solid #dfe7e1;border-radius:8px;background:#fff;padding:12px}.run-overview-stat-card span,.run-overview-section-heading span,.run-json-package-panel span,.project-import-file-card span{color:#66736f;font-size:12px;font-weight:900}.run-overview-stat-card strong{color:#172822;font-size:24px;line-height:1.1}.run-overview-stat-card small{color:#66736f;font-size:12px;font-weight:700}.run-overview-issue-panel,.run-overview-section,.run-json-package-panel,.project-import-file-card,.project-import-format-card{border:1px solid #dfe7e1;border-radius:8px;background:#fff;padding:14px}.run-overview-section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.run-overview-section-heading h3,.project-import-file-card h3{margin:3px 0 0;color:#1f2933;font-size:17px}.run-overview-issue-list{display:grid;gap:8px}.run-overview-issue{display:grid;gap:4px;border:1px solid #e2e8e2;border-radius:8px;padding:10px 12px}.run-overview-issue strong{color:#1f2933;font-size:14px}.run-overview-issue span{color:#5a6b65;font-size:13px;line-height:1.5}.run-overview-issue.issue-blocked{border-color:#ffd2c2;background:#fff7f4}.run-overview-issue.issue-warning{border-color:#f2d99e;background:#fffaf0}.run-overview-issue.issue-ok{border-color:#bee4d5;background:#f0faf6}.run-overview-section-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.run-overview-section dl,.project-import-file-card dl{display:grid;gap:0;margin:0}.run-overview-section dl>div,.project-import-file-card dl>div{display:grid;grid-template-columns:minmax(90px,.45fr) minmax(0,1fr);gap:12px;align-items:start;padding:10px 0;border-top:1px solid #edf1ec}.run-overview-section dl>div:first-child,.project-import-file-card dl>div:first-child{border-top:0}.run-overview-section dt,.project-import-file-card dt{color:#66736f;font-size:13px;font-weight:800}.run-overview-section dd,.project-import-file-card dd{margin:0;color:#21342f;font-size:13px;font-weight:900;line-height:1.5;overflow-wrap:anywhere}.run-json-package-panel{display:grid;gap:10px;background:#f8fbf8}.run-json-package-panel p{margin:0;color:#52615d;font-size:13px;line-height:1.7}.package-download-toggle{justify-content:flex-start;width:fit-content;max-width:100%;border:1px solid #d9e7df;border-radius:8px;background:#fff;padding:9px 12px}.bottom-sheet-footer{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;border-top:1px solid #e5ebe3;background:#fff;padding:12px 16px}.project-import-dropzone{position:relative;border:1px dashed #9fc8bb;border-radius:10px;background:#f3fbf7}.project-import-dropzone input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer}.project-import-dropzone label{display:grid;justify-items:center;gap:6px;padding:26px 16px;color:#2f7d6d;text-align:center;cursor:pointer}.project-import-dropzone strong{font-size:16px}.project-import-dropzone span,.project-import-note,.project-import-file-card p{margin:0;color:#5a6b65;font-size:13px;line-height:1.6}.project-import-file-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.6fr);gap:16px;align-items:start}.project-import-file-card.status-ok{border-color:#bee4d5;background:#f6fcf9}.project-import-file-card.status-warning{border-color:#f2d99e;background:#fffaf0}.project-import-format-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.project-import-format-grid article{display:grid;gap:6px;border:1px solid #e4ebe6;border-radius:8px;background:#fbfcfa;padding:12px}.project-import-format-grid strong{color:#21342f;font-size:14px}.project-import-format-grid span{color:#5a6b65;font-size:12px;line-height:1.5}.project-import-json-example{overflow:auto;margin:12px 0 0;border:1px solid #e1e8e3;border-radius:8px;background:#f7faf7;padding:12px;color:#21342f;font-family:Cascadia Code,SFMono-Regular,Consolas,monospace;font-size:12px;line-height:1.6}.project-import-note{margin-top:12px}.run-status-card{border-left:5px solid #7b8794}.run-succeeded{border-left-color:#2f7d6d}.run-running,.run-queued{border-left-color:#2878a8}.run-failed{border-left-color:#b42318}.run-cancelled{border-left-color:#7b8794}.run-card-actions{display:flex;flex-wrap:wrap;gap:8px}.run-stage-pill{width:fit-content;border-radius:999px;background:#f5f7f2;color:#33413d;padding:7px 10px;font-size:12px;font-weight:900}.run-step-list{display:grid;gap:9px;margin-top:4px}.run-step{display:flex;align-items:center;gap:10px;color:#66736f;font-size:13px}.run-step span{width:12px;height:12px;border:2px solid #cad2c8;border-radius:999px;background:#fff}.run-step.step-done{color:#2f7d6d}.run-step.step-done span{border-color:#2f7d6d;background:#2f7d6d}.run-step.step-active{color:#2878a8}.run-step.step-active span{border-color:#2878a8;background:#dff1fb}.run-step.step-failed{color:#b42318}.run-step.step-failed span{border-color:#b42318;background:#fff1f0}.run-stat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.run-stat-grid div{display:grid;gap:5px;border:1px solid #e4e8df;border-radius:8px;background:#fbfcfa;padding:12px}.run-stat-grid strong{color:#1f2933;font-size:22px}.run-result-card button{justify-self:start}.validation-card{grid-column:1 / -1}.validation-card.validation-failed{border-left:4px solid #c15c3d}.validation-card.validation-passed{border-left:4px solid #2f7d6d}.validation-stat-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:12px}.validation-stat-grid div{border:1px solid #dde3dc;border-radius:8px;background:#fafbf8;padding:10px}.validation-stat-grid span{display:block;color:#63716c;font-size:12px;font-weight:800}.validation-stat-grid strong{display:block;margin-top:4px;color:#1f2933;font-size:20px}.validation-cost-line{margin-top:8px;color:#52615d;font-size:12px;font-weight:800;line-height:1.45}.validation-quality-panel{margin-top:10px;border:1px solid #dde8e1;border-radius:8px;background:#fbfcfa;overflow:hidden}.quality-toggle{width:100%;min-height:38px;display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:10px;border:0;background:transparent;padding:9px 12px;color:#20312d;font-size:13px;font-weight:900;text-align:left;cursor:pointer}.quality-toggle strong{color:#2f7d6d;font-size:12px}.quality-toggle em{color:#63716c;font-size:12px;font-style:normal}.quality-detail-list{border-top:1px solid #e2ebe5;padding:10px}.quality-group-list{display:grid;gap:10px}.quality-group{display:grid;gap:6px}.quality-group-heading{display:flex;align-items:center;justify-content:space-between;color:#31413d;font-size:12px;font-weight:900}.quality-group-heading span{color:#2f7d6d}.quality-item{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:start;border:1px solid #e4ebe4;border-radius:8px;background:#fff;padding:8px 10px}.quality-item div{display:grid;gap:3px}.quality-item strong{color:#1f2933;font-size:12px}.quality-item span{color:#63716c;font-size:12px;line-height:1.45}.quality-item b{min-width:32px;border-radius:999px;background:#eef7f2;color:#2f7d6d;padding:4px 8px;font-size:12px;text-align:center}.quality-empty{margin:0;color:#63716c;font-size:12px;font-weight:800}.validation-issue-list{display:grid;gap:8px;margin-top:12px}.validation-issue{display:grid;gap:3px;border:1px solid #e5ebe3;border-radius:8px;background:#fff;padding:10px 12px}.validation-issue.issue-hard{border-color:#efc9bd;background:#fff8f4}.validation-issue.issue-soft{border-color:#e1d7b5;background:#fffdf2}.validation-issue strong{color:#1f2933;font-size:13px}.validation-issue span{color:#52615d;font-size:12px;line-height:1.45}.run-timetable-card{grid-column:1 / -1;min-height:0}.empty-timetable-state{display:grid;gap:8px;place-items:start;border:1px dashed #cfd8cf;border-radius:8px;background:#fbfcfa;padding:22px;color:#52615d}.empty-timetable-state strong{color:#1f2933;font-size:16px}.empty-timetable-state p{margin:0;font-size:13px}.panel h2{font-size:18px;margin-bottom:12px}pre{white-space:pre-wrap;word-break:break-word;margin:0;color:#374151}.error{color:#b42318;background:#fff1f0;border:1px solid #ffccc7;padding:12px 14px;border-radius:8px}.timetable-panel{display:grid;gap:14px;min-width:0}.timetable-summary{display:flex;flex-wrap:wrap;gap:10px;color:#475467;font-size:13px;line-height:1.35}.timetable-summary span{border:1px solid #dde3dc;border-radius:8px;background:#fafbf8;padding:7px 9px;max-width:100%;overflow-wrap:anywhere}.timetable-view-toolbar{display:flex;justify-content:space-between;align-items:center;gap:10px;overflow:hidden}.timetable-view-toolbar-main{display:flex;align-items:center;gap:10px;min-width:0;overflow:hidden}.timetable-view-toolbar-actions{display:flex;align-items:center;gap:10px;margin-left:auto;flex-shrink:0}.timetable-view-switch{display:inline-flex;align-items:center;gap:4px;border:1px solid #d9e4dd;border-radius:8px;background:#f8faf7;padding:4px;min-width:fit-content}.timetable-view-switch button{height:30px;border:0;border-radius:6px;background:transparent;color:#475467;padding:0 12px;font-size:13px;font-weight:800}.timetable-view-switch button.active{background:#2f7d6d;color:#fff;box-shadow:0 5px 12px #2f7d6d2e}.timetable-view-switch button:disabled{color:#a0aaa5;cursor:not-allowed}.timetable-view-select{width:min(240px,100%);height:40px;border:1px solid #d4ddd5;border-radius:8px;background:#fff;color:#1f2933;padding:0 12px;font-size:13px;font-weight:700}.compact-action{min-height:34px;padding:0 12px;font-size:13px}.week-toolbar{display:flex;gap:6px;align-items:center;overflow:hidden}.week-toolbar-weeks{display:flex;gap:6px;overflow-x:auto;overflow-y:hidden;flex:1;scrollbar-width:thin;scrollbar-color:#c8d4cd transparent}.week-toolbar-weeks::-webkit-scrollbar{height:4px}.week-toolbar-weeks::-webkit-scrollbar-track{background:transparent}.week-toolbar-weeks::-webkit-scrollbar-thumb{background:#c8d4cd;border-radius:4px}.week-toolbar-weeks::-webkit-scrollbar-thumb:hover{background:#a0b0a8}.week-button,.week-arrow{min-width:34px;height:34px;display:inline-grid;place-items:center;padding:0 10px;border:1px solid #d4ddd5;background:#fff;color:#33413d;border-radius:8px;font-size:13px;font-weight:800;flex-shrink:0}.week-arrow{height:46px}.week-button.active{border-color:#2f7d6d;background:#2f7d6d;color:#fff}.week-arrow:disabled{cursor:default}.timetable-scroll{border:1px solid #dfe5dd;border-radius:8px;overflow-x:auto}.timetable-buffer-zone{display:grid;gap:10px;border:1px dashed #bfd4ca;border-radius:10px;background:#f7fbf8;padding:12px;transition:border-color .14s ease,background .14s ease,box-shadow .14s ease}.timetable-buffer-zone.drop-target{border-color:#2f7d6d;background:#eef8f3;box-shadow:inset 0 0 0 1px #2f7d6d}.timetable-move-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid #b8d5cb;border-radius:10px;background:#f1faf5;padding:10px 12px}.timetable-move-bar div{display:grid;gap:3px;min-width:0}.timetable-move-bar span,.timetable-move-bar small{color:#65736f;font-size:12px;font-weight:800}.timetable-move-bar strong{overflow:hidden;color:#1f332d;font-size:14px;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.buffer-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.buffer-heading div{display:grid;gap:2px}.buffer-heading strong{color:#1f332d;font-size:14px;font-weight:900}.buffer-heading span,.buffer-heading small,.buffer-empty{color:#65736f;font-size:12px;font-weight:800}.buffer-entry-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:8px}.buffer-chip{border:1px solid #e2d2c5;border-left:3px solid #b77946;background:#fff9f1}.timetable-result-table{width:100%;min-width:1054px;border-collapse:separate;border-spacing:0;background:#e4e9e2}.timetable-result-table th,.timetable-result-table td{border-right:1px solid #e4e9e2;border-bottom:1px solid #e4e9e2}.timetable-result-table thead th{position:sticky;top:0;z-index:2;min-width:138px;height:44px;background:#f6faf5;color:#21342f;font-size:13px;font-weight:800;text-align:center}.timetable-result-table thead th.blank-result-heading{background:#eef4ef;color:#43514d}.timetable-result-table thead .result-custom-heading{position:static;min-height:44px;background:#e8f3ee;color:#21342f;font-size:13px;text-align:center;vertical-align:middle}.timetable-result-table thead .result-custom-header-row:first-child .result-custom-heading{background:#2f7d6d;color:#fff;font-size:16px}.timetable-result-table thead .result-custom-heading.left{text-align:left}.timetable-result-table thead .result-custom-heading.inactive{background:#eceeec;color:#969e99}.slot-label,.timetable-cell{background:#fff}.slot-header,.slot-label{position:sticky;left:0;z-index:3}.timetable-result-table thead .slot-header{z-index:4;min-width:116px;background:#f6faf5}.slot-label{width:116px;min-width:116px;min-height:92px;height:92px;color:#5b6763;font-size:12px;font-weight:800;text-align:center;padding:8px;font-variant-numeric:tabular-nums;white-space:nowrap}.result-time-axis{color:#31423d}.slot-label strong,.slot-label span{display:block}.slot-label strong{color:#263a34;font-size:13px}.slot-label span{color:#7a8782;font-weight:700}.timetable-cell{min-width:138px;min-height:92px;padding:8px;vertical-align:top}.template-tabs button small{display:block;margin-top:2px;color:#9a5b20;font-size:10px;font-weight:700}.nonstandard-template-label{display:block;margin-top:6px;color:#9a5b20;font-weight:700}.template-application-scope{display:grid;gap:12px;margin:14px 0;padding:14px;border:1px solid #dce7e1;border-radius:12px;background:#f8fbf9}.template-application-scope>div:first-child{display:flex;justify-content:space-between;gap:16px}.template-application-scope>div:first-child span{color:#66756f;font-size:12px}.template-scope-options{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.template-scope-option{display:flex;gap:8px;align-items:flex-start;padding:10px;border:1px solid #d6e2dc;border-radius:10px;background:#fff;cursor:pointer}.template-scope-option.active{border-color:#398b77;background:#edf7f2}.template-scope-option span,.template-scope-option small{display:block}.template-scope-option small{margin-top:3px;color:#718079;line-height:1.35}.template-preset-header-actions{display:flex;gap:8px}.template-excel-import-panel{margin:0 20px 18px;padding:16px;border:1px solid #d5e4dd;border-radius:14px;background:#f7fbf9}.template-excel-import-heading{display:flex;justify-content:space-between;gap:16px;margin-bottom:12px}.template-excel-import-heading span,.template-excel-import-heading strong{display:block}.template-excel-import-heading span,.template-excel-import-heading small{color:#6d7c75;font-size:12px}.template-excel-import-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.template-excel-import-card{position:relative;display:grid;gap:7px;min-height:156px;padding:16px;border:1px solid #ceddd6;border-radius:12px;background:#fff;color:#273a33;text-align:left;cursor:pointer}.template-excel-import-card:hover{border-color:#398b77;box-shadow:0 8px 22px #2a5b4d17}.template-excel-import-card input[type=file]{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}.template-excel-import-card>span{color:#398b77;font-size:12px;font-weight:700}.template-excel-import-card>strong{font-size:18px}.template-excel-import-card p{margin:0;color:#64746d;line-height:1.55}.template-excel-import-card b{align-self:end;color:#2f7d6d}.template-excel-import-card.human-option{border-color:#e4c9aa;background:#fffaf3}.template-excel-import-card.human-option>span,.template-excel-import-card.human-option b{color:#9a5b20}.template-import-result{margin:10px 0 0;padding:10px 12px;border-radius:9px;background:#edf7f2;color:#2d685a;line-height:1.5}.course-cell-style-controls select:disabled{color:#8a9590;background:#eef1ef;cursor:not-allowed}.course-cell-style-controls label small{display:block;margin-top:4px;color:#8a6b4b}.irregular-template-preview-table,.irregular-result-table{width:max-content;min-width:100%}.irregular-template-preview-table th,.irregular-template-preview-table td,.irregular-result-table th,.irregular-result-table td{min-width:82px;height:44px}.irregular-class-heading,.irregular-homeroom-heading{position:sticky;left:0;z-index:3;min-width:116px!important;background:#f2f7f4!important;text-align:left}.irregular-subject-cell{color:#294a40;font-weight:700;text-align:center}@media (max-width: 980px){.template-scope-options{grid-template-columns:repeat(2,minmax(0,1fr))}.template-excel-import-options{grid-template-columns:1fr}}.timetable-cell.empty-course-cell{background:#e7eae8}.timetable-cell.drop-target{outline:1px dashed #8ab6a9;outline-offset:-5px}.timetable-cell .lesson-chip+.lesson-chip{margin-top:6px}.custom-result-cell{text-align:center;vertical-align:middle;color:#43514d;font-size:12px;font-weight:700;background:#fbfcfa}.custom-result-cell.left{text-align:left}.custom-result-cell.inactive{background:#f5f5f1;color:#9aa39f}.custom-result-cell span{display:block;white-space:pre-wrap;overflow-wrap:anywhere}.blank-result-row-heading{background:#f7faf6}.empty-result-cell{height:96px;background:#fff;color:#7a8782;text-align:center;font-size:13px;font-weight:800}.lesson-chip{display:grid;gap:3px;align-content:start;border-left:3px solid #c15c3d;background:#fff8f4;color:#33413d;border-radius:6px;padding:6px 7px;min-width:0;cursor:grab}.lesson-chip:active{cursor:grabbing}.lesson-chip.selected{border-color:#2f7d6d;border-left-color:#2f7d6d;background:#eef8f3;box-shadow:0 0 0 2px #2f7d6d2e}.lesson-chip strong,.lesson-chip span,.lesson-chip small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lesson-chip strong{font-size:12px}.lesson-chip span{font-size:12px;color:#53615f}.lesson-chip small,.overflow-count{font-size:11px;color:#7b6a5a}.overflow-count{font-weight:800}@media (max-width: 1200px){.shell{grid-template-columns:200px minmax(0,1fr)}.sidebar{padding:24px 14px}.workspace{padding:26px 22px;min-width:0}.data-workbench,.planning-workbench,.planning-class-workbench,.constraint-workbench,.constraint-workbench-v2{min-width:0}.data-workbench{grid-template-columns:210px minmax(0,1fr);height:auto;min-height:0;overflow:visible}.data-workbench>.detail-panel{grid-column:1 / -1;width:100%;max-width:none}.master-data-panel .data-table-panel,.master-data-panel .detail-panel{height:auto;max-height:none}.master-data-panel .data-table-panel{overflow:visible}.master-data-panel .detail-panel{overflow-x:visible}.master-data-panel .data-table{table-layout:auto}.planning-class-workbench{grid-template-columns:210px minmax(0,1fr)}.planning-class-workbench .plan-detail-panel{grid-column:1 / -1;grid-row:auto;width:100%}.teacher-course-picker{grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-course-picker button{grid-column:1 / -1}.import-inline-row{grid-template-columns:1fr}.runs-dashboard,.run-overview-stat-grid,.project-import-format-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.run-timetable-card,.validation-card{grid-column:1 / -1}.run-card{min-width:0}.agent-status-strip{grid-template-columns:minmax(0,1fr) minmax(180px,220px)}.agent-status-meta,.agent-usage-card{grid-column:1 / -1}.agent-status-meta{justify-content:flex-start}.agent-usage-card{max-width:420px}.agent-task-grid{grid-template-columns:repeat(5,minmax(150px,1fr))}.agent-layout{grid-template-columns:minmax(136px,170px) minmax(0,1fr) minmax(240px,300px)}.agent-layout.agent-layout-single{grid-template-columns:minmax(0,1fr)}.agent-layout.actions-hidden{grid-template-columns:minmax(136px,170px) minmax(0,1fr)}.agent-layout.conversation-collapsed{grid-template-columns:58px minmax(0,1fr) minmax(240px,300px)}.agent-layout.conversation-collapsed.actions-hidden{grid-template-columns:58px minmax(0,1fr)}.agent-chat-card{height:min(720px,calc(100vh - 230px))}.agent-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.agent-issue-columns{grid-template-columns:1fr}.agent-action-panel{position:sticky;grid-column:auto;top:18px;height:min(720px,calc(100vh - 230px));max-height:min(720px,calc(100vh - 230px));overflow:auto}.template-preview-workbench,.course-cell-style-card,.weekday-visibility-strip{grid-template-columns:1fr}.template-preview-workbench .preview-table-scroll{max-height:none}.weekday-toggle-list{grid-template-columns:repeat(4,minmax(0,1fr))}.data-table-panel,.matrix-panel,.subject-plan-panel,.constraint-list-panel,.run-timetable-card{min-width:0;overflow-x:auto}}@media (max-width: 1040px){.landing-nav-links>a{display:none}.landing-hero{min-height:620px;padding:64px 32px 26px}.landing-hero-copy h1{font-size:48px}.landing-workflow-list{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:30px}.landing-capabilities{padding:70px 32px;grid-template-columns:1fr;gap:36px}.landing-capabilities-intro{position:static;max-width:720px}.landing-product-band{padding:64px 32px;grid-template-columns:1fr;gap:38px}.home-layout,.profile-grid,.application-item.review,.member-row{grid-template-columns:1fr}.member-row .row-actions,.application-item.review .row-actions{justify-content:flex-start}.member-self-note{justify-self:start}.agent-layout,.agent-layout.conversation-collapsed,.agent-layout.agent-layout-single{grid-template-columns:1fr}.agent-conversation-list{min-height:auto;max-height:240px;overflow:auto}.agent-chat-card{height:min(72vh,720px);min-height:520px}.agent-action-panel{position:static;grid-column:auto;height:auto;max-height:none;overflow:visible}.agent-action-popover{width:calc(100vw - 28px);max-height:62vh}.agent-action-impact-row{grid-template-columns:1fr;padding:8px 0}.agent-action-impact-row.head{display:none}.agent-action-impact-row span{border-left:0;padding:4px 10px}.agent-action-impact-row span:nth-child(2):before{content:"信息：";color:#66736f;font-weight:900}.agent-action-impact-row span:nth-child(3):before{content:"状态：";color:#66736f;font-weight:900}.agent-action-impact-row span:nth-child(4):before{content:"说明：";color:#66736f;font-weight:900}.run-data-sheet-header,.project-import-header{grid-template-columns:1fr;align-items:stretch}.run-data-sheet-status,.project-import-version-pill{justify-self:stretch;min-width:0}.run-overview-section-grid,.project-import-file-card{grid-template-columns:1fr}.project-card{grid-template-columns:1fr;align-items:stretch}.project-card-actions{justify-content:flex-start;flex-wrap:wrap}.project-card-actions button{min-height:36px}.data-workbench{grid-template-columns:1fr}.subnav{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(160px,1fr);overflow-x:auto;padding-bottom:4px}.master-data-panel .data-table-panel{overflow:visible}.master-data-panel .data-table{display:grid;gap:10px;width:100%;min-width:0;border-collapse:separate}.master-data-panel .data-table thead{display:none}.master-data-panel .data-table tbody{display:grid;gap:10px}.master-data-panel .data-table tr{display:grid;gap:8px;border:1px solid #e1e7df;border-radius:8px;background:#fff;padding:10px}.master-data-panel .data-table td{display:grid;grid-template-columns:minmax(72px,.36fr) minmax(0,1fr);align-items:center;gap:10px;border-bottom:0;padding:0;word-break:break-word}.master-data-panel .data-table td:before{content:attr(data-label);color:#66736f;font-size:12px;font-weight:900}.master-data-panel .data-table td[data-label=操作]{grid-template-columns:1fr;align-items:stretch}.master-data-panel .data-table td[data-label=操作]:before{display:none}.master-data-panel .row-actions{justify-content:flex-start;flex-wrap:wrap}}@media (max-width: 840px){.template-time-preset-grid{grid-template-columns:1fr}.saved-timetable-preset-heading{align-items:stretch;flex-direction:column}.saved-timetable-preset-heading small{max-width:none;text-align:left}.saved-timetable-preset-grid{grid-template-columns:1fr}.template-time-preset-mask{align-items:end;padding:12px}.template-time-preset-modal{width:100%;max-height:88vh}.template-time-preset-header{padding:16px}.template-time-preset-header h3{font-size:18px}.template-time-preset-grid{padding:14px 16px}.scenario-card-grid,.template-library-toolbar,.template-library-card,.constraint-transfer{grid-template-columns:1fr}.transfer-actions{grid-template-columns:repeat(2,minmax(0,1fr));min-width:0}.template-library-actions{justify-content:stretch}.template-library-actions button{flex:1 1 120px}.landing-shell{padding:0}.landing-nav{min-height:70px;padding:12px 16px}.landing-nav-links{flex-wrap:nowrap}.landing-hero{min-height:590px;padding:52px 20px 22px;background-position:62% center}.landing-hero-copy{gap:14px}.landing-hero-copy h1{font-size:40px}.landing-hero-lead{font-size:22px}.landing-hero-description{max-width:560px;font-size:15px}.landing-hero-summary>div{padding:14px;align-items:flex-start;flex-direction:column;gap:4px}.landing-hero-summary strong{font-size:24px}.landing-workflow-band{padding:58px 20px}.landing-section-heading h2,.landing-capabilities-intro h2,.landing-product-copy h2,.landing-cta h2{font-size:30px}.landing-workflow-list{grid-template-columns:repeat(2,minmax(0,1fr))}.landing-capabilities{padding:60px 20px}.landing-capability-row{grid-template-columns:40px minmax(0,1fr);gap:18px}.landing-capability-row ul{grid-column:2;grid-template-columns:repeat(2,minmax(0,1fr))}.landing-product-band{padding:58px 20px;grid-template-columns:minmax(0,1fr)}.landing-cta{padding:54px 20px;align-items:stretch;flex-direction:column}.landing-footer{padding:24px 20px}.landing-modal-mask{align-items:end;padding:12px}.info-modal-panel{width:100%;max-height:88vh;overflow:auto}.shell{grid-template-columns:1fr}.sidebar{display:none}.workspace{padding:18px 14px;min-width:0}.topbar{align-items:flex-start;flex-direction:column}.user-bar,.home-header,.project-context-strip{align-items:stretch;flex-direction:column;width:100%}.user-email{max-width:none}.profile-header,.profile-card-title{align-items:stretch;flex-direction:column}.profile-card-title strong,.profile-meta-list dd{text-align:left;justify-content:flex-start}.profile-card-actions{justify-content:flex-start}.profile-create-org-button{margin-left:0}.profile-card-actions button{flex:1;min-width:min(180px,100%)}.platform-ai-quota-row,.platform-ai-quota-edit{grid-template-columns:1fr}.agent-header,.agent-input-actions{align-items:stretch;flex-direction:column}.agent-header-actions{justify-content:stretch}.agent-header-actions button{flex:1}.agent-status-strip,.agent-summary-grid,.agent-wizard-grid{grid-template-columns:1fr}.agent-task-grid{grid-template-columns:repeat(5,minmax(150px,1fr))}.agent-status-meter>div:first-child,.agent-status-meta{justify-content:flex-start}.agent-layout,.agent-layout.actions-hidden,.agent-layout.conversation-collapsed,.agent-layout.conversation-collapsed.actions-hidden{grid-template-columns:1fr}.agent-conversation-list{min-height:auto;max-height:240px;overflow:auto}.agent-chat-card{height:min(72vh,720px);min-height:520px}.agent-message{max-width:100%}.agent-action-panel{position:static;grid-column:auto;height:auto;max-height:none;overflow:visible}.agent-input-actions span{margin-right:0}.context-grid,.context-editor,.panel-grid,.master-grid,.term-settings-card,.home-layout,.home-run-actions,.planning-grid,.workflow-steps,.dashboard-grid,.data-workbench,.planning-workbench,.planning-class-workbench,.constraint-workbench,.constraint-workbench-v2,.constraint-toolbar,.constraint-transfer,.select-form,.constraint-grid,.template-form,.course-cell-style-controls{grid-template-columns:1fr}.template-form-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.template-form .template-form-options .checkbox-row{white-space:normal}.planning-mode-tabs{width:100%}.planning-mode-tabs button{flex:1}.official-class-flow>header,.class-missing-heading,.class-copy-recommendation,.class-complete-callout{align-items:stretch;flex-direction:column}.class-flow-progress{width:auto;height:auto;grid-auto-flow:column;justify-content:start;border-width:0 0 0 5px;border-radius:7px;padding:8px 10px;text-align:left}.official-flow-steps,.class-missing-list{grid-template-columns:1fr}.class-missing-counts{justify-content:flex-start}.class-complete-callout .btn-primary{width:100%}.teacher-course-picker{grid-template-columns:1fr}.teacher-course-picker button{grid-column:auto}.template-preview-workbench{grid-template-columns:1fr}.course-cell-preview{min-height:68px}.weekday-toggle-list{grid-template-columns:repeat(2,minmax(0,1fr))}.template-inspector-mask{align-items:end}.template-inspector-drawer{width:100%;height:auto;max-height:88vh;border-left:0;border-radius:14px 14px 0 0}.run-control-strip{grid-template-columns:1fr;align-items:stretch}.runs-dashboard,.run-stat-grid,.validation-stat-grid{grid-template-columns:1fr}.actions button,.run-control-strip button,.run-card-actions button{width:100%}.transfer-actions{grid-template-columns:1fr 1fr;min-width:0}.matrix-panel,.planning-class-panel,.subject-plan-panel,.plan-detail-panel,.task-list-panel{grid-column:auto;grid-row:auto}.subject-import-card{grid-template-columns:1fr}.master-data-panel header,.planning-panel header,.constraint-panel header,.console-panel header,.home-section-title{align-items:flex-start;flex-direction:column}.project-card{grid-template-columns:1fr}.project-card-actions,.home-header-actions{justify-content:stretch}.project-card-actions button,.home-header-actions button{flex:1}.drawer-backdrop{align-items:end;justify-content:stretch}.management-drawer{width:100%;min-height:0;max-height:92vh;overflow:auto}.data-workbench{height:auto;min-height:0;overflow:visible}.bottom-sheet{width:calc(100vw - 24px);max-height:88vh;min-height:0;height:auto;margin:0 12px 12px}.bottom-sheet-header{grid-template-columns:1fr;align-items:stretch}.run-data-overview-sheet,.project-import-sheet{height:88vh}.run-overview-stat-grid,.project-import-format-grid{grid-template-columns:1fr}.run-data-overview-body,.project-import-body{padding:12px}.run-overview-section dl>div,.project-import-file-card dl>div{grid-template-columns:1fr;gap:4px}.bottom-sheet-footer{justify-content:stretch}.bottom-sheet-footer button{flex:1 1 150px}.course-preferred-sheet,.room-rule-sheet{height:calc(100vh - 24px);min-height:0}.subnav,.master-data-panel .data-table-panel,.master-data-panel .detail-panel{height:auto;max-height:none}.subnav{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(156px,1fr);overflow-x:auto;padding-bottom:4px}.subnav .nav-card,.subnav button{min-width:0}.master-data-panel .data-table-panel{overflow:visible}.master-data-panel .detail-panel{width:100%;max-width:none;overflow-x:visible}.master-data-panel .data-table{min-width:0}}@media (max-width: 560px){.subject-default-summary-heading{align-items:stretch;flex-direction:column}.subject-default-summary-heading>button{width:100%}.subject-task-fields{grid-template-columns:1fr}.subject-target-row-heading{align-items:flex-start}.subject-teaching-task-list{padding-left:0}.template-form-options{grid-template-columns:1fr}.template-new-confirm-modal>footer{flex-direction:column-reverse}.template-new-confirm-modal>footer button{width:100%}.landing-hero-copy h1{font-size:34px}.landing-brand-copy small,.landing-nav-link{display:none}.landing-admin-button{min-height:36px;margin-left:0;padding:8px 11px;font-size:12px}.landing-hero{min-height:570px;padding:42px 16px 16px}.landing-hero-lead{font-size:19px}.landing-hero-description{line-height:1.65}.landing-actions{align-items:stretch}.landing-actions button{flex:1 1 150px}.landing-hero-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.landing-hero-summary>div{padding:10px 8px}.landing-hero-summary span{font-size:11px}.landing-workflow-band,.landing-capabilities,.landing-product-band,.landing-cta{padding-right:16px;padding-left:16px}.landing-section-heading h2,.landing-capabilities-intro h2,.landing-product-copy h2,.landing-cta h2{font-size:26px}.landing-workflow-list{grid-template-columns:1fr;row-gap:20px}.landing-capability-row{padding:24px 0;grid-template-columns:34px minmax(0,1fr);gap:14px}.landing-capability-copy h3{font-size:19px}.landing-capability-row ul{grid-column:1 / -1;grid-template-columns:repeat(2,minmax(0,1fr))}.landing-product-preview{padding:18px}.landing-product-preview-head{align-items:stretch;flex-direction:column}.landing-check-list>div{align-items:flex-start;flex-direction:column;gap:4px}.landing-cta .landing-actions{display:grid;grid-template-columns:1fr}.landing-footer{align-items:flex-start;flex-direction:column}.landing-footer>div:last-child{flex-wrap:wrap}.table-toolbar{align-items:stretch;flex-direction:column}.search-field{flex-basis:auto;width:100%}.table-count{align-self:flex-start}.master-data-panel .data-table td{grid-template-columns:1fr;gap:4px}}@media (max-width: 720px){.guide-card,.guide-card.fallback{top:auto!important;right:12px!important;bottom:88px!important;left:12px!important;width:auto;max-height:38vh;overflow-y:auto;transform:none}.guide-controls{right:12px;bottom:12px;left:12px;justify-content:flex-end;overflow-x:auto}.guide-controls button{flex:0 0 auto}.guide-highlight{border-radius:8px}.guide-global-button{width:auto}}@media (max-width: 840px){.ai-constraint-step,.ai-constraint-result{padding:14px}.ai-constraint-source-switch,.ai-scenario-grid,.ai-constraint-choice-grid,.ai-template-picker,.ai-clarification-grid,.constraint-penalty-options{grid-template-columns:1fr}.ai-resolve-button{width:100%;justify-self:stretch}.ai-scope-editor-footer{grid-template-columns:1fr;align-items:stretch}.ai-scope-editor-head{gap:10px;padding-inline:12px}.ai-scope-textarea{min-height:132px;padding-inline:12px}.ai-constraint-result-head{align-items:stretch;flex-direction:column}.ai-constraint-group-table thead{display:none}.ai-constraint-group-table,.ai-constraint-group-table tbody,.ai-constraint-group-table tr,.ai-constraint-group-table td{display:block;width:100%}.ai-constraint-group-table tr{margin-bottom:10px;border:1px solid #dfe8e2;border-radius:8px;background:#fbfcfa;padding:8px 10px}.ai-constraint-group-table td,.ai-constraint-group-table td:first-child{display:grid;grid-template-columns:88px minmax(0,1fr);gap:8px;width:100%;border-bottom:1px solid #edf1ee;padding:7px 0;text-align:left}.ai-constraint-group-table td:last-child{border-bottom:0}.ai-constraint-group-table td:before{content:attr(data-label);color:#7a8782;font-size:10px;font-weight:900}.ai-constraint-confirm-bar{margin:2px -14px -14px;padding:10px 14px}.ai-constraint-confirm-bar button{flex:1 1 110px}}
