:root{--ink:#26283c;--muted:#666d81;--accent:#6255cd;--line:#e3e5ed;--bg:#f6f7fb;--c0:#f5e8c9;--c1:#d6eee4;--c2:#e1dff7;--c3:#f3dfe8;--c4:#e4edcf;--c5:#f4e2d5;--c6:#d9eaf5;font-family:system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:var(--ink);font-synthesis:none;color-scheme:light}
*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0;background:var(--bg);font-size:14px;line-height:1.55}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}input,textarea,select{width:100%;min-width:0;background:white;border:1px solid #d8dce7;border-radius:8px;padding:10px 11px}textarea{resize:vertical;line-height:1.65}input[type=checkbox]{width:17px;height:17px;accent-color:var(--accent);flex:none}input:focus,textarea:focus,select:focus{border-color:#a69bdf}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #a79de8;outline-offset:3px}h1,h2,h3,p{margin:0}button,a{-webkit-tap-highlight-color:transparent}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.button{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid #dce0e9;border-radius:9px;background:white;padding:10px 15px;min-height:42px;font-size:13px;font-weight:600;white-space:nowrap}.button:hover:not(:disabled){background:#f2f1f9;border-color:#cfc9e8}.primary{background:var(--accent);color:white;border-color:var(--accent)}.primary:hover:not(:disabled){background:#5346b9;border-color:#5346b9}.small{font-size:12px;min-height:36px;padding:7px 11px}.quiet{background:none;border:0;padding:7px 0;color:var(--muted);font-size:12px}.quiet:hover{text-decoration:underline;color:var(--accent)}.accent{color:var(--accent)}.danger{color:#af3d51}.icon-button{border:1px solid var(--line);background:white;border-radius:8px;min-width:36px;height:36px;font-size:14px;flex:none}.icon-button:hover{background:#f1eefb}.header{display:flex;align-items:center;gap:24px;background:#fffffffa;border-bottom:1px solid var(--line);padding:17px 32px;position:sticky;top:0;z-index:20;backdrop-filter:blur(12px)}.brand{display:flex;gap:11px;align-items:center;text-decoration:none;color:var(--ink);font-weight:720;font-size:24px;letter-spacing:-.9px;line-height:1.2;flex:none}.brand-icon{width:40px;height:40px;background:var(--accent);border-radius:11px;color:white;font-size:28px;text-align:center;line-height:36px}.brand small{display:block;letter-spacing:0;color:var(--muted);font-size:10px;font-weight:400;margin-top:5px}.name-wrap{max-width:270px;min-width:110px}.name-wrap input{background:#f8f9fc;border-color:transparent;font-size:13px}.header-actions{margin-left:auto;display:flex;gap:12px;align-items:center}main{max-width:1800px;margin:auto;padding:0 32px}.intro{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:31px 0 25px}.eyebrow{font-size:10px;letter-spacing:.16em;color:var(--accent);font-weight:750}.intro h1{font-size:30px;letter-spacing:-1px;font-weight:650;line-height:1.3;margin:7px 0}.intro p{color:var(--muted);font-size:13px}.free-pill{color:#52765d;background:#eaf3ed;border:1px solid #dce9df;font-size:11px;padding:5px 10px;border-radius:18px;white-space:nowrap}.import-banner{display:flex;align-items:center;gap:18px;padding:21px 24px;background:linear-gradient(115deg,#f0ecfc,#f8f7fe);border:1px solid #dfd9f2;border-radius:13px;margin-bottom:24px}.banner-icon{width:43px;height:48px;background:white;border:1px solid #d7d0ed;border-radius:9px;display:grid;place-items:center;color:var(--accent);font-size:29px;flex:none}.import-banner h2{font-size:17px;font-weight:650;letter-spacing:-.3px}.import-banner p{color:var(--muted);font-size:12px;margin-top:4px}.import-banner .button{margin-left:auto}.workspace{display:grid;grid-template-columns:267px minmax(0,1fr);border:1px solid var(--line);border-radius:15px;background:white;min-height:500px;overflow:hidden}.sidebar{padding:22px 18px;border-right:1px solid var(--line);background:#fcfcfe;min-width:0}.small-heading{font-size:10px;letter-spacing:.13em;color:var(--muted);font-weight:700;display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.count{font-size:11px;background:#eeedf5;padding:1px 7px;border-radius:5px;letter-spacing:0}.event-card{border:1px solid var(--line);border-radius:9px;background:white;padding:13px;margin-bottom:10px;width:100%;text-align:left;display:block;position:relative}.event-card:hover{border-color:#bfb5e0;box-shadow:0 3px 14px #27283b06}.event-card h3{font-size:13px;font-weight:650;display:flex;gap:8px;align-items:baseline;overflow-wrap:anywhere}.dot{width:8px;height:8px;border-radius:50%;flex:none;display:inline-block}.event-card p{color:var(--muted);font-size:11px;margin:7px 0 0}.tag{display:inline-block;font-size:10px;padding:2px 6px;background:#f1f2f7;color:#656981;border-radius:4px;margin-top:9px}.side-actions{margin-top:12px}.planner{padding:22px 24px 28px;min-width:0}.planner-top{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:22px}.planner-top h2{font-size:17px;font-weight:650;letter-spacing:-.4px}.planner-top p{font-size:11px;color:var(--muted);margin-top:3px}.segmented{display:flex;background:#f4f4f9;border:1px solid #e9e8f0;border-radius:8px;padding:3px}.segmented button{background:none;border:0;padding:6px 12px;border-radius:5px;font-size:12px;color:var(--muted)}.segmented button[aria-pressed=true]{background:white;box-shadow:0 1px 4px #27283b12;color:var(--accent);font-weight:600}.empty-state{padding:50px 18px;text-align:center;max-width:440px;margin:auto}.empty-symbol{background:#f0edf9;border:1px solid #e5def3;width:55px;height:55px;border-radius:15px;display:grid;place-items:center;color:var(--accent);font-size:24px;margin:0 auto 20px}.empty-state h3{font-size:21px;letter-spacing:-.4px;font-weight:620}.empty-state p{font-size:13px;color:var(--muted);line-height:1.8;margin:12px 0 20px}.empty-state .button{margin:5px}.side-empty{font-size:12px;color:var(--muted);line-height:1.8}.month-title{font-size:11px;text-transform:uppercase;color:var(--muted);letter-spacing:.1em;font-weight:650;padding:18px 0 9px;border-bottom:1px solid var(--line)}.month-title:first-child{padding-top:0}.agenda-row{display:flex;align-items:center;text-align:left;gap:17px;width:100%;padding:13px 6px;background:white;border:0;border-bottom:1px solid #f0f0f5;cursor:pointer}.agenda-row:hover{background:#faf9fe}.date-tile{width:41px;text-align:center;flex:none}.date-tile strong{display:block;font-size:20px;line-height:1.3;font-weight:600}.date-tile small{font-size:9px;letter-spacing:.08em;color:var(--muted)}.agenda-body{min-width:0;flex:1}.agenda-body strong{font-size:13px;font-weight:620;overflow-wrap:anywhere}.agenda-body p{font-size:11px;color:var(--muted);margin-top:3px;overflow-wrap:anywhere}.agenda-row .time{color:var(--muted);font-size:11px;text-align:right;flex:none;max-width:135px}.week-nav{display:flex;align-items:center;gap:10px;margin-bottom:18px}.week-nav span{font-size:12px;font-weight:600}.week-nav .quiet{margin-left:auto}#weekView{overflow-x:auto}.week-grid{display:grid;grid-template-columns:repeat(7,minmax(105px,1fr));min-width:735px;border-top:1px solid var(--line);border-left:1px solid var(--line);border-radius:8px;overflow:hidden}.week-day{border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-height:310px;background:#fff}.week-day.is-today{background:#fcfbff}.week-heading{background:#fafafe;padding:12px 8px;text-align:center;font-size:10px;color:var(--muted);border-bottom:1px solid var(--line);letter-spacing:.08em}.week-heading b{display:block;color:var(--ink);font-size:18px;font-weight:600;letter-spacing:0;margin-top:4px}.week-event{display:block;border:1px solid #292b3f0b;border-left:3px solid #292b3f24;border-radius:5px;margin:7px 5px;padding:8px;text-align:left;width:calc(100% - 10px);font-size:11px;overflow-wrap:anywhere}.week-event strong{display:block;font-weight:620}.week-event small{font-size:10px;display:block;margin-top:5px;color:#505569}.week-empty{font-size:10px;color:#979bad;text-align:center;margin-top:22px}footer{display:flex;align-items:center;justify-content:space-between;gap:10px;color:#70778a;font-size:11px;padding:16px 2px 25px}footer .quiet{font-size:11px}#saveStatus:before{content:'';display:inline-block;width:6px;height:6px;background:#72a18b;border-radius:50%;margin-right:7px}#saveStatus.warning{color:#a46423}#saveStatus.warning:before{background:#bd8233}
dialog{color:var(--ink);border:1px solid #dfe1e9;border-radius:16px;background:white;box-shadow:0 24px 100px #15162e30;max-height:90dvh;margin:auto;padding:26px;width:calc(100% - 32px);overflow:auto}dialog::backdrop{background:#24253875;backdrop-filter:blur(3px)}.dialog-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}.dialog-head h2{font-size:23px;letter-spacing:-.7px;font-weight:640;line-height:1.3;margin-top:6px}.import-dialog{max-width:1080px}.event-dialog{max-width:590px}.help-dialog{max-width:580px}.confirm-dialog{max-width:420px}.confirm-dialog h2{font-size:20px;margin-bottom:12px}.confirm-dialog p{font-size:13px;color:var(--muted)}.steps{display:flex;align-items:center;gap:25px;padding:12px 0 18px;border-bottom:1px solid var(--line);font-size:11px;color:#777c8f}.steps span{display:flex;align-items:center;gap:7px}.steps .current{color:var(--accent)}.steps b{font-weight:600}.lead{color:var(--muted);font-size:13px;margin:20px 0}.import-columns{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(260px,1fr);gap:26px}.field-label{display:block;font-size:11px;font-weight:650;color:#4e5369;margin:15px 0 6px}.field-label:first-child{margin-top:0}.field-label span{font-weight:400;color:#7d8395;margin-left:3px}.import-settings{padding:20px;background:#f8f8fc;border:1px solid #eaeaf2;border-radius:11px}.import-settings h3{font-size:14px;font-weight:620;margin-bottom:19px}.row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.row .field-label{margin-top:15px}.row>*{min-width:0}.text-tools{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:10px;color:var(--muted)}#syllabusText{font-size:13px;min-height:370px}.note{background:#efedf9;border:1px solid #e5e0f2;padding:13px;border-radius:8px;font-size:12px;margin-top:20px}.note p{font-size:11px;line-height:1.75;color:#62667d;margin-top:5px}.fine{font-size:11px;color:var(--muted);line-height:1.75}.import-settings>.fine{margin-top:15px}.dialog-footer{border-top:1px solid var(--line);padding-top:18px;margin-top:24px;display:flex;justify-content:space-between;align-items:center;gap:20px}.dialog-footer>.fine{max-width:65%}.footer-buttons{display:flex;gap:10px;margin-left:auto}.error{border:1px solid #efc6cc;background:#fff3f4;color:#a23148;padding:11px 13px;border-radius:8px;font-size:12px;margin-top:15px}.review-intro{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin:22px 0 15px}.review-intro h3{font-size:17px;letter-spacing:-.3px}.review-intro p{font-size:12px;color:var(--muted);margin-top:5px;max-width:700px}.review-notice{font-size:11px;color:#78622f;background:#faf5e9;border:1px solid #eae0c7;border-radius:8px;padding:10px 13px;margin-bottom:18px}.review-card{border:1px solid var(--line);border-radius:11px;margin:16px 0;background:white;overflow:hidden}.review-card.excluded{background:#f8f8fa}.review-card.approved{border-color:#a5cbb6}.review-top{padding:12px 16px;display:flex;align-items:center;justify-content:space-between;gap:10px;background:#fafafd;border-bottom:1px solid #ededf4}.review-top>label{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:600}.review-top .status-tag{font-size:10px;color:#81612b;background:#f8efd9;padding:3px 8px;border-radius:5px}.review-card.approved .status-tag{background:#e7f3eb;color:#47735a}.review-card .status-tag.confidence-low{background:#fbe9e7;color:#9c3526}.review-card .status-tag.confidence-medium{background:#f8efd9;color:#81612b}.review-card .status-tag.confidence-high{background:#e7f3eb;color:#47735a}.review-card .status-tag.confidence-manual{background:#eef0f6;color:#5a5f72}.review-card .confidence-why{padding:12px 16px;border-top:1px solid #ededf4;background:#fcfcfe}.review-card .confidence-why h4{font-size:10px;text-transform:uppercase;letter-spacing:.09em;color:var(--muted);margin:0 0 7px}.review-card .confidence-why ul{margin:0;padding-left:17px;color:#5f6478;font-size:11px;line-height:1.8}.review-content{padding:16px;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.4fr);gap:24px}.review-source{background:#f7f7fc;border:1px solid #eaeaf2;border-radius:8px;padding:13px;align-self:start}.review-source h4{font-size:10px;text-transform:uppercase;letter-spacing:.09em;color:var(--muted);margin:0 0 9px}.review-source blockquote{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px;line-height:1.8}.review-source ul{margin:15px 0 0;padding-left:17px;color:#836333;font-size:11px;line-height:1.8}.event-fields{min-width:0}.event-fields .field-label{margin-top:13px}.event-fields>.field-label:first-child{margin-top:0}.event-fields input,.event-fields select,.event-fields textarea{font-size:12px;padding:8px 10px}.day-picker{display:flex;gap:5px;margin-top:7px}.day-picker button{flex:1;min-width:0;padding:8px 2px;background:white;border:1px solid #dfe1ec;border-radius:6px;font-size:10px}.day-picker button[aria-pressed=true]{color:#5546b4;background:#eeeafa;border-color:#aea4df}.check-label{display:flex;align-items:flex-start;gap:8px;font-size:12px;margin-top:16px;font-weight:550}.check-label input{margin-top:2px}.field-hint{color:var(--muted);font-size:10px;margin-top:5px;line-height:1.7}.row-issues{font-size:11px;color:#a06624;margin-top:10px;line-height:1.7}.row-issues:empty{display:none}.reviewed-box{padding-top:13px;border-top:1px solid #eeeef4;margin-top:15px}.reviewed-box .check-label{margin-top:0}.event-fields details{margin-top:14px}.event-fields textarea{min-height:62px}details{border-bottom:1px solid var(--line);padding:13px 0;font-size:12px}summary{cursor:pointer;font-weight:600}details p{font-size:12px;color:var(--muted);line-height:1.8;margin-top:10px}details blockquote{font-size:12px;color:var(--muted);white-space:pre-wrap;overflow-wrap:anywhere;margin:13px 0 0}.unmatched-line{display:flex;align-items:flex-start;gap:12px;padding:10px 0;border-top:1px solid #ededf4}.unmatched-line p{flex:1;margin:0;font-size:11px;white-space:pre-wrap;overflow-wrap:anywhere}.unmatched-line .button{flex:none}.sticky-footer{position:sticky;bottom:-26px;padding:16px 0;background:#fffffffa;backdrop-filter:blur(10px);z-index:3}.help-dialog h2{font-size:23px;font-weight:650;letter-spacing:-.5px}.help-list{padding-left:21px;margin:23px 0 0;font-size:13px}.help-list li{padding:0 0 17px 5px}.help-list p{font-size:12px;color:var(--muted);line-height:1.8;margin-top:6px}.backup-tools{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);z-index:99;max-width:calc(100% - 32px);width:max-content;background:#28283e;color:white;border:1px solid #3b3a54;border-radius:10px;padding:12px 18px;font-size:12px;box-shadow:0 7px 30px #24253820}.noscript{padding:20px;background:#fff0dc;position:fixed;bottom:0;left:0;right:0}.list-more{padding:14px 0;color:var(--muted);font-size:11px}
@media(min-width:1500px){.workspace{grid-template-columns:290px minmax(0,1fr)}}
@media(max-width:1000px){.header{gap:15px;padding:15px 22px}.brand small{display:none}.brand{font-size:22px}.name-wrap{max-width:200px}.header-actions{gap:9px}main{padding:0 22px}.workspace{grid-template-columns:220px minmax(0,1fr)}.planner{padding:20px 17px}.import-columns{grid-template-columns:minmax(0,1.2fr) minmax(245px,1fr)}.intro h1{font-size:27px}.import-dialog{padding:22px}.sticky-footer{bottom:-22px}}
@media(max-width:720px){.header{padding:12px 16px;flex-wrap:wrap;gap:12px}.brand{font-size:21px}.brand-icon{width:33px;height:33px;line-height:29px;font-size:24px}.name-wrap{order:3;max-width:none;width:100%}.name-wrap input{padding:7px 10px}.header-actions{gap:8px}.header-actions .button{font-size:11px;min-height:37px;padding:8px 10px}.header-actions>.quiet{font-size:11px}.desktop{display:none}main{padding:0 14px}.intro{padding:25px 3px 20px;display:block}.intro h1{font-size:28px}.intro p{font-size:12px;max-width:360px}.free-pill{display:inline-block;margin-top:13px}.import-banner{gap:12px;padding:17px;flex-wrap:wrap}.banner-icon{display:none}.import-banner h2{font-size:15px}.import-banner .button{margin-left:0;margin-top:2px;width:100%}.workspace{display:block}.sidebar{border-right:0;border-bottom:1px solid var(--line);padding:15px}.small-heading{margin-bottom:12px;justify-content:flex-start;gap:10px}#eventCards{display:flex;gap:10px;overflow-x:auto}.event-card{min-width:190px;max-width:230px;margin-bottom:0;flex:none}.side-actions{margin-top:5px}.planner{padding:20px 14px}.planner-top h2{font-size:16px}.planner-top{gap:8px}.segmented button{padding:6px 9px;font-size:11px}.agenda-row{gap:10px;padding:13px 0}.agenda-body strong{font-size:12px}.agenda-row .time{font-size:10px;max-width:96px}.date-tile{width:31px}.date-tile strong{font-size:18px}.date-tile small{font-size:8px}footer{flex-wrap:wrap;font-size:10px;gap:0;padding-bottom:20px}footer .quiet{font-size:10px}.import-dialog{max-height:100dvh;width:100%;height:100dvh;border:0;border-radius:0;padding:20px 16px}.dialog-head{gap:15px}.dialog-head h2{font-size:21px}.steps{gap:15px;font-size:10px}.import-columns{display:block}.import-settings{margin-top:20px;padding:16px}#syllabusText{min-height:270px}.lead{font-size:12px}.dialog-footer{gap:12px;flex-wrap:wrap}.dialog-footer>.fine{max-width:none;flex-basis:100%}.dialog-footer>.primary{margin-left:auto}.review-content{display:block;padding:13px}.review-source{margin-bottom:18px}.review-intro{flex-wrap:wrap}.review-intro .button{order:-1}.review-top{padding:12px}.review-top .status-tag{font-size:9px}.sticky-footer{bottom:-20px}.sticky-footer .fine{flex-basis:100%}.sticky-footer>.primary{width:100%}.unmatched-line{display:block}.unmatched-line .button{margin-top:7px}.event-dialog{max-height:95dvh;padding:21px}.help-dialog{padding:22px}.empty-state{padding:35px 7px}.week-nav{gap:7px}.week-nav span{font-size:11px}.week-nav .quiet{font-size:10px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

.file-import{padding:18px 20px;margin:18px 0 24px;border:1px solid var(--line,#dedde8);border-radius:14px;background:#f7f6fd}.file-import input[type=file]{width:100%;max-width:100%;font:inherit}.file-import input::file-selector-button{border:1px solid #d8d3ed;background:white;color:#5144b4;border-radius:8px;padding:9px 14px;margin:0 12px 8px 0;font:inherit;font-weight:600;cursor:pointer}.file-import p{margin:7px 0 0}.file-import [aria-busy=true]{opacity:.7}

.start-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.start-card{display:flex;flex-direction:column;padding:24px;border:1px solid var(--line);border-radius:15px;background:white}.start-card h2{font-size:21px;margin:8px 0}.start-card p{color:var(--muted);margin:0 0 20px;max-width:510px}.start-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:auto}.build-hint{margin:12px 0 22px}.weekday-presets{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}.weekday-presets .button{font-size:11px;padding:6px 9px;min-height:32px}@media(max-width:720px){.start-options{grid-template-columns:1fr;gap:12px}.start-card{padding:18px}.start-card h2{font-size:19px}.start-actions .button{flex:1}.start-card p{font-size:12px}}

.visual-scroll{overflow:auto;border:1px solid var(--line);border-radius:12px;background:#fff}.visual-grid{display:grid;grid-template-columns:65px repeat(7,minmax(105px,1fr));min-width:820px}.visual-heading{display:flex;flex-direction:column;gap:3px;padding:12px 6px;text-align:center;background:#faf9fe;border-bottom:1px solid var(--line);border-left:1px solid var(--line);font-size:12px}.visual-heading span{color:var(--muted);font-size:10px}.visual-heading.current-day{background:#ece8fb;color:var(--accent)}.visual-corner{padding:18px 8px;background:#faf9fe;color:var(--muted);font-size:10px;border-bottom:1px solid var(--line)}.visual-all-day{padding:5px;min-height:35px;border-left:1px solid var(--line);border-bottom:1px solid var(--line)}.all-day-label{font-size:10px;color:var(--muted);padding:8px;border-bottom:1px solid var(--line)}.all-day-block{display:block;width:100%;padding:5px;border:0;border-radius:5px;margin:2px 0;text-align:left;font-size:10px;overflow-wrap:anywhere}.visual-axis{position:relative;background:#fafbfe}.visual-axis span{position:absolute;left:4px;padding-top:3px;font-size:10px;color:var(--muted)}.visual-day{position:relative;border-left:1px solid var(--line);background:repeating-linear-gradient(to bottom,transparent 0px,transparent 65px,#e8e9f1 65px,#e8e9f1 66px)}.time-slot{position:absolute;left:0;width:100%;height:33px;border:0;border-bottom:1px dashed #eeedf5;background:transparent;border-radius:0}.time-slot:hover,.time-slot:focus-visible{background:#eeeafa;outline:2px solid #a99bdd;outline-offset:-2px}.time-slot:hover:after,.time-slot:focus-visible:after{content:'＋';color:var(--accent)}.visual-block{position:absolute;z-index:1;border:1px solid #37325d18;border-left:3px solid #6255cd66;border-radius:6px;padding:4px 5px;text-align:left;overflow:hidden;min-width:0;box-shadow:0 1px 3px #25223d0d}.visual-block:hover{filter:brightness(.97);box-shadow:0 3px 9px #25223d20}.visual-block strong,.visual-block span{display:block;overflow:hidden;text-overflow:ellipsis;font-size:10px;line-height:1.35}.visual-block strong{font-size:11px}.visual-block span{margin-top:3px}.grid-help{font-size:12px;color:var(--muted);margin:0 0 12px}.color-picker{display:flex;gap:8px;margin:12px 0}.color-choice{width:25px;height:25px;border:2px solid transparent;border-radius:50%;padding:0}.color-choice[aria-pressed=true]{outline:2px solid var(--accent);outline-offset:2px}.visual-scroll:focus-within{scroll-behavior:auto}

.builder-dialog{width:min(1220px,96vw);max-width:96vw;max-height:94dvh;padding:24px;border:1px solid var(--line);border-radius:18px;overflow:auto;background:var(--bg)}.builder-dialog .visual-scroll{max-height:62dvh}.builder-dialog .dialog-head{margin-bottom:12px}.builder-dialog .dialog-footer{margin-top:16px}.builder-dialog::backdrop{background:rgba(25,23,45,.48);backdrop-filter:blur(3px)}@media(max-width:720px){.builder-dialog{width:100%;max-width:100%;height:100dvh;max-height:100dvh;border-radius:0;padding:16px}.builder-dialog .visual-scroll{max-height:65dvh}}

.schedule-tools{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;padding:20px;background:white;border:1px solid var(--line);border-radius:12px;margin:0 0 20px}.schedule-tools details{grid-column:1/-1}.schedule-tools input{max-width:350px}.schedule-tools .fine{margin-top:8px}.scope-actions{display:flex;flex-direction:column;gap:12px;margin-top:20px}#operationPreview{max-height:35vh;overflow:auto;margin-top:16px}#operationPreview p{padding:8px;border-bottom:1px solid var(--line)}#previewOperation{margin-top:16px}#eventScope{margin-bottom:12px}@media(max-width:720px){.schedule-tools{grid-template-columns:1fr}.schedule-tools>.start-actions{flex-wrap:wrap}.event-dialog .dialog-footer{flex-wrap:wrap}}
