:root{--bg:#f6f7f9;--card:#fff;--ink:#0f172a;--muted:#64748b;--line:#0f172a0f;--shadow:0 1px 2px #0f172a0a, 0 0 0 1px var(--line);--shadow-hover:0 8px 24px -8px #0f172a2e, 0 0 0 1px #0f172a14;--ease-out:cubic-bezier(.23, 1, .32, 1);--ease-reveal:cubic-bezier(.4, 0, .2, 1);--ease-in-out:cubic-bezier(.77, 0, .175, 1);--ease-drawer:cubic-bezier(.32, .72, 0, 1)}.bp{--field:#e1e6ec;height:100%;padding:22px clamp(16px,2.6vw,40px) 0;font-size:13px;overflow:hidden auto}.bp button,.bp-dialog button{font:inherit;background:var(--card);color:var(--ink);cursor:pointer;transition:background .16s var(--ease-out), box-shadow .16s var(--ease-out), transform .16s var(--ease-out), opacity .16s var(--ease-out);border:0;border-radius:980px;padding:7px 13px;font-size:13px;font-weight:500;box-shadow:0 0 0 1px #0f172a1f}.bp button:disabled,.bp-dialog button:disabled{opacity:.43;cursor:default}.bp button:active:not(:disabled),.bp-dialog button:active:not(:disabled){transform:scale(.97)}.bp button:focus-visible,.bp-dialog button:focus-visible,.bp input:focus-visible,.bp-dialog input:focus-visible,.bp-loss-item:focus-visible{outline:2px solid var(--accent,#3d6daa);outline-offset:3px}.bp .bp-primary,.bp-dialog .bp-primary{background:var(--accent,#3d6daa);color:#fff;box-shadow:none}.bp-header{justify-content:space-between;align-items:center;gap:20px;min-height:36px;margin:0 0 16px;display:flex}.bp-header h1{letter-spacing:-.015em;margin:0;font-size:17px;font-weight:600;line-height:1.2}.bp h2.bp-section-label,.bp-section-label{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin:0;font-size:11px;font-weight:600}.bp-header-actions,.bp-inline{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.bp-layout{grid-template-columns:284px minmax(0,1fr);align-items:start;gap:16px;display:grid}.bp-work{flex-direction:column;gap:14px;min-width:0;display:flex}.bp-stage{grid-template-columns:minmax(0,1fr) clamp(320px,24vw,400px);align-items:stretch;gap:14px;display:grid}.bp-stage>.bp-scene{flex-direction:column;display:flex}.bp-stage>.bp-scene .bp-canvas{flex:auto;height:auto;min-height:380px}.bp-stage-side{flex-direction:column;gap:14px;min-width:0;display:flex}.bp-tables{grid-template-columns:repeat(auto-fit,minmax(min(100%,880px),1fr));align-items:start;gap:14px;display:grid}.bp-title{align-items:baseline;gap:12px;min-width:0;display:flex}.bp-stage-side .bp-steps{grid-template-columns:1fr;gap:12px;padding:2px 16px 16px}.bp-stage-side .bp-section-heading{flex-direction:column;align-items:flex-start;gap:4px}.bp-stage-side .bp-section-heading>span{text-align:left;max-width:100%}.bp-stage-side .bp-balance-legend{grid-template-columns:1fr;gap:8px}.bp-top{grid-template-columns:minmax(0,1fr) clamp(330px,24vw,420px);align-items:start;gap:14px;display:grid}.bp-summary{flex-direction:column;gap:14px;min-width:0;display:flex}.bp-summary-card{padding:16px 0 4px}.bp-summary-card .bp-yield{padding:0 16px 12px}.bp-summary-card .bp-yield>small{margin-top:2px;display:block}.bp-summary .bp-section-heading{flex-direction:column;align-items:flex-start;gap:4px}.bp-summary .bp-section-heading>span{text-align:left;max-width:100%}.bp-summary .bp-balance-legend{grid-template-columns:1fr;gap:8px}.bp-rows .bp-row{min-height:36px;padding:6px 16px}.bp-rows .bp-row+.bp-row:before{left:16px}.bp-rows .bp-value{text-align:right;flex-wrap:wrap;flex:0 auto;justify-content:flex-end}.bp-rows .bp-row>span:first-child{color:var(--muted);flex:none;font-size:12px}.bp h2{letter-spacing:-.015em;font-size:15px;font-weight:600}.bp-inspector{flex-direction:column;gap:6px;display:flex;position:sticky;top:12px}.bp-group-title{padding:14px 14px 6px}.bp-group .bp-group-title+.bp-row:before{display:none}.bp-inspector{gap:12px}.bp-group{background:var(--card);box-shadow:var(--shadow);border-radius:12px}.bp-row{min-height:40px;color:var(--ink);justify-content:space-between;align-items:center;gap:12px;padding:4px 14px;font-size:13px;display:flex;position:relative}.bp-row+.bp-row:before{content:"";background:var(--line);height:1px;position:absolute;top:0;left:14px;right:0}.bp-row>span:first-child{flex-direction:column;flex:auto;gap:1px;min-width:0;display:flex}.bp-row>span:first-child small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:11.5px;overflow:hidden}.bp-row-stack{flex-wrap:wrap;padding-top:8px;padding-bottom:8px}.bp-row-stack>span:first-child{flex-direction:row;flex:100%;align-items:baseline;gap:6px}.bp-row-stack .bp-value{flex:1 0 100%;justify-content:flex-end}.bp-value{color:var(--muted);flex:none;align-items:center;gap:6px;font-size:12px;display:flex}.bp-value strong{color:var(--ink);font-variant-numeric:tabular-nums;font-size:13px;font-weight:500}.bp-value input{text-align:right;width:86px;font:inherit;color:var(--ink);background:var(--field);font-variant-numeric:tabular-nums;-moz-appearance:textfield;border:0;border-radius:7px;padding:5px 9px;font-size:13px;font-weight:500;transition:box-shadow .15s}.bp-value input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.bp-value input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.bp-value input:focus-visible{box-shadow:0 0 0 2px var(--accent);outline:0}.bp-inline-input{text-align:right;min-width:0;font:inherit;color:var(--ink);background:0 0;border:0;flex:0 150px;padding:5px 0;font-size:13px}.bp-inline-input::placeholder{color:#a5adba}.bp-inline-input:focus-visible{box-shadow:0 1px 0 var(--accent);outline:0}.bp-row .bp-segments{border-radius:8px;flex:none;gap:1px;padding:2px}.bp .bp-row .bp-segments button{border-radius:6px;min-width:34px;padding:3px 10px;font-size:12px}.bp-row.bp-choice .bp-choice-trigger{width:auto;min-height:0;color:var(--ink);background:0 0;gap:4px;padding:4px 2px 4px 10px;font-size:13px}.bp-row.bp-choice>span:first-child{flex:1}.bp-row.bp-choice .bp-options{transform-origin:100% 0;min-width:200px;left:auto;right:8px}.bp-footnote{color:var(--muted);margin:0;padding:2px 14px 0;font-size:12px;line-height:1.5}.bp-footnote strong{color:var(--ink);font-weight:500}.bp-axes{grid-template-columns:1fr 1fr;gap:12px;display:grid}.bp-field{flex-direction:column;gap:6px;min-width:0;font-size:13px;display:flex}.bp-field>span{color:var(--muted);font-size:12px;font-weight:500}.bp-field>input,.bp-number,.bp-choice-trigger{width:100%;font:inherit;color:var(--ink);background:var(--field);border:0;border-radius:9px;min-height:36px}.bp-field>input{padding:8px 12px;font-size:14px}.bp-number{align-items:center;padding-right:11px;display:flex}.bp-number input{width:100%;min-width:0;font:inherit;color:var(--ink);border-radius:inherit;font-variant-numeric:tabular-nums;-moz-appearance:textfield;background:0 0;border:0;padding:8px 12px;font-size:14px;font-weight:500}.bp-number input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.bp-number input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.bp-number>span{color:var(--muted);font-size:12px}.bp-number:focus-within{box-shadow:0 0 0 2px var(--accent,#3d6daa)}.bp-number input:focus-visible{outline:0}.bp-shapes{display:flex}.bp-segments{background:var(--field);border-radius:9px;gap:2px;padding:3px;display:flex}.bp .bp-segments button{box-shadow:none;color:var(--muted);background:0 0;border-radius:7px;flex:1;padding:5px 8px;font-size:13px}.bp .bp-segments button:disabled{opacity:.35}.bp .bp-segments [aria-pressed=true]{background:var(--card);color:var(--ink);font-weight:600;box-shadow:0 1px 3px #0f172a24}.bp-hint{color:var(--muted);font-size:12px;line-height:1.5}.bp-parameter-note{padding-left:28px;position:relative}.bp-parameter-note:before{content:"";background:#e0a526;border-radius:50%;width:7px;height:7px;position:absolute;top:7px;left:14px}.bp-parameter-note strong{color:var(--ink);font-weight:600}.bp-parameter-note p{margin-top:3px}.bp-parameter-note.calibrated:before{background:#3f9d5d}.bp-panel-section{box-shadow:0 -1px 0 var(--line);flex-direction:column;gap:11px;padding-top:15px;display:flex}.bp-constraint-summary{flex-direction:column;gap:4px;display:flex}.bp-constraint-summary>span{color:var(--muted);font-size:12px}.bp-constraint-summary strong{font-variant-numeric:tabular-nums;font-size:13px;font-weight:500}.bp-constraint-summary small{color:var(--muted);font-weight:400}.bp-choice{position:relative}.bp button.bp-choice-trigger,.bp-dialog button.bp-choice-trigger{text-align:left;background:var(--field);box-shadow:none;border-radius:9px;justify-content:space-between;align-items:center;gap:8px;font-size:14px;font-weight:400;display:flex}.bp-options{z-index:8;background:var(--card);transform-origin:0 0;max-height:240px;transition:transform .16s var(--ease-out), opacity .16s var(--ease-out);border-radius:10px;padding:5px;position:absolute;top:calc(100% + 5px);left:0;right:0;overflow-y:auto;box-shadow:0 12px 40px #10264026}.bp-options button{text-align:left;width:100%;box-shadow:none;justify-content:space-between;align-items:center;display:flex}.bp-options [aria-selected=true]{color:var(--accent,#3d6daa);background:var(--accent-soft,#3d6daa14)}@starting-style{.bp-options{opacity:0;transform:translateY(-3px)scale(.97)}}.bp-work{flex-direction:column;gap:14px;min-width:0;display:flex;position:relative}.bp-compute-status{color:var(--muted);font-size:12px}.bp-updating section{opacity:.7}.bp-work section,.bp-work .bp-scene{transition:opacity .15s var(--ease-out), transform .22s var(--ease-out);opacity:1;transform:none}@starting-style{.bp-work section,.bp-work .bp-scene{opacity:0;transform:translateY(8px)}}.bp-scene{background:var(--card);color:var(--ink);min-width:0;box-shadow:var(--shadow);border-radius:14px;overflow:hidden}.bp-scene-head{color:var(--muted);justify-content:space-between;align-items:center;gap:8px;padding:14px 16px 10px;font-size:12px;display:flex}.bp-scene-head>span{letter-spacing:.04em;text-transform:uppercase;font-size:11px;font-weight:600}.bp-scene-views{gap:5px;display:flex}.bp .bp-scene button{background:var(--card);box-shadow:0 0 0 1px var(--line);color:var(--muted);padding:6px 10px;font-size:12px;font-weight:500}.bp .bp-scene button[aria-pressed=true]{color:var(--ink);background:var(--accent-soft);box-shadow:none}.bp-canvas{touch-action:none;background:radial-gradient(at 50% 35%,#223250 0,#172440 55%,#121c30 100%);border-radius:10px;height:clamp(380px,62vh,760px);margin:0 12px;position:relative;overflow:hidden}.bp-canvas canvas{display:block;position:absolute;inset:0}.bp-axis-legend{color:#b9d4f3;pointer-events:none;z-index:1;font-size:12px;position:absolute;bottom:12px;left:14px}.bp-scene-tools{padding:0 16px 14px}.bp-layers{flex-wrap:wrap;gap:6px;padding:12px 0 14px;display:flex}.bp-layers button{align-items:center;gap:6px;display:flex}.bp-layer-dot{opacity:.5;background:#74849f;border-radius:2px;width:7px;height:7px}[aria-pressed=true] .bp-layer-dot{opacity:1}.bp-layer-dot.product{background:#6ca2ed}.bp-layer-dot.kerf{background:#fb7185}.bp-layer-dot.skin{background:#b6becb}.bp-layer-dot.grind{background:#ffc857}.bp-layer-dot.green{background:0 0;box-shadow:inset 0 0 0 1px #c4cedc}.bp-playback{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.bp .bp-play{width:34px;height:34px;color:var(--ink);background:var(--field);box-shadow:none;flex:none;padding:8px}.bp-timeline{flex:200px;min-width:0}.bp-explode{flex:0 140px;min-width:80px}.bp-timeline,.bp-explode{color:var(--muted);flex-direction:column;gap:5px;font-size:12px;display:flex}.bp-scene input[type=range]{width:100%;accent-color:var(--accent);cursor:pointer;height:15px;margin:2px 0}.bp-scene-hint{text-align:center;color:var(--muted);margin-top:12px;font-size:12px}.bp-piece-tip{z-index:3;pointer-events:none;color:#17243b;background:#eaf2fcf5;border-radius:8px;flex-direction:column;gap:4px;padding:10px 12px;font-size:12px;display:flex;position:absolute;box-shadow:0 6px 18px #0003}.bp-scene-error{z-index:4;text-align:center;color:#c3d3e9;background:#172440;place-content:center;padding:32px;display:grid;position:absolute;inset:0}.bp-loading{place-items:center;min-height:460px;display:grid}.bp-recommendation{background:var(--card);box-shadow:var(--shadow);border-radius:14px;grid-template-columns:160px minmax(0,1fr) auto;align-items:center;gap:22px;padding:18px 22px;display:grid}.bp-yield{flex-direction:column;gap:4px;display:flex}.bp-yield>span{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);font-size:11px;font-weight:600}.bp-yield>strong{letter-spacing:-.04em;color:var(--ink);font-variant-numeric:tabular-nums;font-size:clamp(26px,2.6vw,34px);font-weight:600;line-height:1.1}.bp-yield small{color:var(--muted);font-size:12px}.bp-dimensions,.bp-block-stats{flex-direction:column;gap:12px;display:flex}.bp-dimensions>div,.bp-block-stats>div{flex-direction:column;gap:3px;display:flex}.bp-dimensions span,.bp-block-stats span{color:var(--muted);font-size:12px}.bp-dimensions strong,.bp-block-stats strong{font-variant-numeric:tabular-nums;font-size:13px;font-weight:500}.bp-dimensions small,.bp-block-stats small{color:var(--muted);font-weight:400}.bp-card{background:var(--card);box-shadow:var(--shadow);border-radius:14px;min-width:0}.bp-section-heading{justify-content:space-between;align-items:center;gap:12px;padding:14px 16px 10px;display:flex}.bp-section-heading>span{color:var(--muted);text-align:right;max-width:60%;font-size:12px}.bp-balance{padding-bottom:18px}.bp-balance-bar{background:var(--bg);border-radius:980px;gap:2px;height:12px;margin:0 16px 14px;display:flex;overflow:hidden}.bp-balance-bar>span{min-width:0;transition:width .18s var(--ease-out);border-radius:2px}.bp-loss-accepted{background:hsl(var(--hue) 53% 53%)}.bp-loss-kerf{background:#e97986}.bp-loss-grind{background:#e6b655}.bp-loss-skin{background:#919fb5}.bp-loss-edge{background:#a99bc7}.bp-loss-breakage{background:#cf9878}.bp-balance-legend{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 18px;padding:0 16px;display:grid}.bp-loss-item{cursor:help;border-radius:5px;justify-content:space-between;align-items:center;gap:8px;display:flex;position:relative}.bp-loss-item>span{color:var(--muted);align-items:center;gap:7px;font-size:13px;display:flex}.bp-loss-item i{border-radius:2px;flex:none;width:7px;height:7px}.bp-loss-item strong{font-variant-numeric:tabular-nums;font-size:13px;font-weight:550}.bp-loss-tooltip{z-index:5;white-space:nowrap;color:#f5f8fc;visibility:hidden;opacity:0;transition:opacity .15s var(--ease-out), transform .15s var(--ease-out), visibility .15s;background:#17243b;border-radius:8px;padding:8px 12px;font-size:12px;position:absolute;bottom:calc(100% + 8px);left:0;transform:translateY(3px);box-shadow:0 4px 12px #17243b26}.bp-loss-item:focus-within .bp-loss-tooltip{visibility:visible;opacity:1;transform:none}.bp-balance>p{padding:12px 16px 0}.bp-table-scroll{max-width:100%;padding-bottom:4px;overflow-x:auto}.bp table{border-collapse:collapse;text-align:left;white-space:nowrap;font-variant-numeric:tabular-nums;width:100%;font-size:13px}.bp th{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;background:0 0;font-size:11px;font-weight:600}.bp th,.bp td{box-shadow:0 1px 0 var(--line);border:0;padding:10px 14px}.bp th:first-child,.bp td:first-child{padding-left:22px}.bp th:last-child,.bp td:last-child{padding-right:22px}.bp th button{box-shadow:none;font-size:inherit;color:inherit;background:0 0;padding:0}.bp tr.bp-selected{background:hsl(var(--hue) 48% 46% / .065)}.bp .bp-rank{width:27px;height:27px;color:var(--muted);background:var(--bg);box-shadow:none;font-variant-numeric:tabular-nums;border-radius:50%;padding:0}.bp .bp-rank[aria-pressed=true]{background:var(--accent);color:#fff}.bp td>strong{font-weight:600}.bp tbody tr{transition:background .15s var(--ease-out)}.bp-steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:0;padding:4px 22px 22px;list-style:none;display:grid}.bp-steps li{align-items:flex-start;gap:11px;display:flex}.bp-step-number{background:var(--accent-soft);width:26px;height:26px;color:var(--accent);border-radius:9px;flex:none;place-items:center;font-size:12px;font-weight:600;display:grid}.bp-steps li>div{flex-direction:column;gap:3px;display:flex}.bp-steps strong{font-size:13px;font-weight:600}.bp-steps li>div>span{color:var(--muted);font-size:12px}.bp tr.bp-bottleneck{background:#fdf7ed}.bp-shortage{color:#a95d17;font-weight:600}.bp-capacity,.bp-alternatives{container-type:inline-size}@container (width<=820px){.bp-alternatives .bp-table-scroll{overflow:visible}.bp-alternatives thead{display:none}.bp-alternatives table,.bp-alternatives tbody{display:block}.bp-alternatives tr{box-shadow:0 1px 0 var(--line);white-space:normal;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px;padding:12px 16px 14px 56px;display:grid;position:relative}.bp-alternatives td{box-shadow:none;flex-direction:column;gap:2px;padding:0;display:flex}.bp-alternatives td:before{content:attr(data-label);color:var(--muted);font-size:11px;font-weight:500}.bp-alternatives td:first-child,.bp-alternatives td:last-child{padding:0}.bp-alternatives td:first-child{position:absolute;top:12px;left:16px}.bp-alternatives td:first-child:before,.bp-alternatives .bp-alt-dims:before{display:none}.bp-alternatives .bp-alt-dims{grid-column:1/-1;justify-content:center;min-height:27px;font-weight:550}.bp-alternatives .bp-alt-die{grid-column:1/-1}}@container (width>=560px) and (width<=820px){.bp-alternatives tr{grid-template-columns:repeat(4,minmax(0,1fr))}}@container (width<=860px){.bp-capacity .bp-table-scroll{overflow:visible}.bp-capacity thead{display:none}.bp-capacity table,.bp-capacity tbody{display:block}.bp-capacity tr{box-shadow:0 1px 0 var(--line);white-space:normal;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 12px;padding:12px 16px 14px;display:grid}.bp-capacity td{box-shadow:none;flex-direction:column;gap:2px;padding:0;display:flex}.bp-capacity td:before{content:attr(data-label);color:var(--muted);font-size:11px;font-weight:500}.bp-capacity .bp-capa-name{flex-direction:row;grid-column:1/-1;align-items:center;gap:8px}.bp-capacity .bp-capa-name:before{display:none}.bp-capacity .bp-badge{margin-left:0}}.bp-badge{color:#946111;background:#f8edcf;border-radius:5px;margin-left:8px;padding:2px 5px;font-size:12px;font-weight:500;display:inline-block}.bp-card-hint{padding:13px 22px 17px}.bp-comparison{background:var(--accent-soft);border-radius:14px;flex-wrap:wrap;align-items:center;gap:30px;padding:18px 22px;display:flex}.bp-comparison>div{flex-direction:column;gap:4px;display:flex}.bp-comparison span,.bp-comparison small{color:var(--muted);font-size:12px}.bp-comparison strong{font-size:14px;font-weight:600}.bp-comparison>button{margin-left:auto}.bp-notice,.bp-status{border-radius:12px;margin:0 0 16px;padding:12px 16px;font-size:13px}.bp-notice{background:var(--card);color:var(--ink);box-shadow:var(--shadow);justify-content:space-between;align-items:center;gap:16px;display:flex}.bp-notice button{flex:none}.bp-status{background:var(--accent-soft);color:var(--accent)}.bp-error{color:#b94242;padding:4px 0;font-size:14px}.bp-empty{text-align:center;min-height:520px;box-shadow:var(--shadow);background:#fff;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:15px;padding:40px;display:flex}.bp-empty p{color:var(--muted);max-width:46ch;line-height:1.6}.bp-empty-symbol{color:#a6b8ce;font-size:50px;line-height:1}.bp .bp-footer{background:0 0;padding:30px 0;font-size:12px}.bp-dialog{--accent:#3d68ae;--accent-soft:#3d68ae1a;width:min(440px,100vw - 32px);max-height:calc(100dvh - 48px);color:var(--ink);opacity:1;transition:opacity .18s var(--ease-out), transform .18s var(--ease-out);background:#fff;border:0;border-radius:18px;margin:auto;padding:0;font:14px/1.5 -apple-system,system-ui,sans-serif;overflow:auto;transform:none;box-shadow:0 25px 100px #101a2d38}.bp-dialog-wide{width:min(840px,100vw - 32px)}.bp-dialog::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#101a2d55}.bp-dialog>header{z-index:10;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 1px 0 var(--line);background:#fffffff5;justify-content:space-between;align-items:center;gap:16px;padding:16px 24px;display:flex;position:sticky;top:0}.bp-dialog h2{letter-spacing:-.025em;margin:0;font-size:20px;font-weight:650}.bp-dialog h3{margin:0 0 14px;font-size:15px;font-weight:600}.bp .bp-icon-button,.bp-dialog .bp-icon-button{width:30px;height:30px;box-shadow:none;background:var(--bg);color:var(--muted);border-radius:50%;place-items:center;padding:0;font-size:22px;display:grid}.bp-save-form,.bp-history,.bp-settings-form{flex-direction:column;gap:18px;padding:22px 24px;display:flex}.bp-dialog-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:9px;padding-top:16px;display:flex}.bp-settings-form fieldset{min-width:0;box-shadow:0 -1px 0 var(--line);border:0;flex-direction:column;gap:16px;margin:6px 0 0;padding:20px 0 0;display:flex}.bp-settings-form legend{padding:0 10px 0 0;font-size:16px;font-weight:650}.bp-settings-form input:disabled{opacity:.65}.bp-settings-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.bp-check{align-items:flex-start;gap:8px;font-size:14px;display:flex}.bp-check input{accent-color:var(--accent);margin-top:4px}.bp-limit{background:#f9fafc;border-radius:12px;flex-direction:column;gap:14px;padding:16px;display:flex}.bp-limit .bp-field>input,.bp-limit .bp-number,.bp-limit .bp-choice-trigger{background:#fff}.bp-limit-head{justify-content:space-between;align-items:center;display:flex}.bp-dialog .bp-link-button{box-shadow:none;color:var(--accent);background:0 0;padding:0}.bp-history ul{flex-direction:column;gap:6px;display:flex}.bp-history li{box-shadow:0 1px 0 var(--line);justify-content:space-between;align-items:center;gap:15px;padding:14px 0;display:flex}.bp-history li>div:first-child{flex-direction:column;gap:4px;display:flex}.bp-history li strong{font-weight:600}.bp-history li span{color:var(--muted);font-size:12px}@starting-style{.bp-dialog[open]{opacity:0;transform:translateY(8px)scale(.97)}}@media (hover:hover){.bp button:hover:not(:disabled),.bp-dialog button:hover:not(:disabled){background:color-mix(in srgb, var(--accent,#3d6daa) 7%, white)}.bp .bp-primary:hover:not(:disabled),.bp-dialog .bp-primary:hover:not(:disabled){background:color-mix(in srgb, var(--accent,#3d6daa) 92%, #000)}.bp .bp-scene button:hover:not(:disabled){background:#ffffff20}.bp-loss-item:hover .bp-loss-tooltip{visibility:visible;opacity:1;transform:none}.bp tbody tr:not(.bp-bottleneck):hover{background:var(--accent-soft)}}@media (width>=1550px){.bp-dimensions{flex-flow:wrap;gap:18px 32px}.bp-recommendation{gap:35px}}@media (width<=1150px){.bp{padding:18px 14px 0}.bp-layout{grid-template-columns:1fr;gap:14px}.bp-inspector{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:12px;display:grid;position:static}.bp-inspector>.bp-footnote{grid-column:1/-1;padding-top:0}.bp-stage{grid-template-columns:1fr}.bp-stage-side{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));align-items:start;display:grid}.bp-canvas{aspect-ratio:16/10;height:auto}.bp-section-heading{flex-direction:column;align-items:flex-start;gap:6px}.bp-section-heading>span{text-align:left;max-width:100%}.bp-steps{grid-template-columns:1fr}}@media (width<=820px){.bp-header{flex-direction:column;align-items:flex-start;gap:16px}.bp-header-actions{width:100%}.bp-header-actions button{flex:1;padding:10px 8px}.bp-inspector{grid-template-columns:1fr}.bp-canvas{aspect-ratio:4/3;height:auto}.bp-settings-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.bp-notice,.bp-history li{flex-direction:column;align-items:flex-start}}@media (width<=480px){.bp{padding:18px 12px 0}.bp-header h1{font-size:20px}.bp-input-panel{gap:12px;padding:16px}.bp-field>span{font-size:13px}.bp-number{padding-right:7px}.bp-number input{padding:9px 8px}.bp-recommendation{grid-template-columns:1fr;gap:20px}.bp-dimensions{grid-area:auto}.bp-block-stats{justify-content:space-between}.bp-yield>strong{font-size:30px}.bp-canvas{aspect-ratio:1;height:auto;margin:0 8px}.bp-stage-side{grid-template-columns:1fr}.bp-scene-head{flex-wrap:wrap;padding:14px 12px 0}.bp-scene-tools{padding:0 12px 15px}.bp-playback{flex-wrap:wrap}.bp-explode{flex-basis:100%}.bp-balance-legend{gap:12px;padding:0 16px}.bp-loss-item:nth-child(2n) .bp-loss-tooltip{left:auto;right:0}.bp-section-heading,.bp-steps{padding-left:16px;padding-right:16px}.bp-comparison{gap:18px}.bp-settings-grid{grid-template-columns:1fr}.bp-dialog>header,.bp-save-form,.bp-history,.bp-settings-form{padding:18px}.bp-dialog-actions>button{flex:auto}}@media (prefers-reduced-motion:reduce){.bp *,.bp-dialog,.bp-dialog *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.area{--accent:hsl(var(--hue) 48% 46%);--accent-soft:hsl(var(--hue) 48% 46% / .1)}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;font:14px/1.45 -apple-system,system-ui,Pretendard,sans-serif}a{color:inherit;text-decoration:none}h1,h2,p,ul{margin:0}ul{padding:0;list-style:none}.ap{word-break:keep-all;--ink:#1d1d1f;--muted:#6e6e73;--link:#06c;--light:#f5f5f7;color:var(--ink);background:#fff}.ap-nav{z-index:10;-webkit-backdrop-filter:saturate(180%)blur(20px);letter-spacing:-.01em;background:#ffffffb8;justify-content:center;align-items:center;gap:40px;height:48px;font-size:12px;display:flex;position:sticky;top:0}.ap-nav a{color:#1d1d1fcc;transition:color .15s var(--ease-out)}.ap-nav a:hover{color:#000}.ap-brand{letter-spacing:-.02em;font-size:15px;font-weight:600}.ap-hero,.ap-tile{text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.ap-hero{background:var(--light);min-height:calc(100vh - 48px);padding:80px 24px}.ap-hero:before{content:"";pointer-events:none;background:radial-gradient(closest-side,#3d84f52e,#813df51a 45%,#0000 70%);width:900px;height:900px;position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%)}.ap-hero>*{position:relative}.ap-hero h1{letter-spacing:-.04em;background:linear-gradient(90deg,#587cf3 0%,#7060f1 25%,#b65cbb 50%,#ee6181 75%,#f68866 100%);color:#0000;-webkit-background-clip:text;background-clip:text;margin:-.04em 0 -.28em;padding:.04em .06em .28em;font-size:clamp(64px,9vw,112px);font-weight:700;line-height:1}.ap-tag{letter-spacing:-.015em;margin-top:22px;font-size:clamp(22px,2.8vw,32px);font-weight:500}.ap-sub{color:var(--muted);letter-spacing:-.015em;margin-top:2px;font-size:clamp(22px,2.8vw,32px)}.ap-tile{background:#fff;min-height:92vh;padding:110px 24px 120px}.ap-tile.dark{--ink:#f5f5f7;--muted:#a1a1a6;--link:#2997ff;color:var(--ink);background:#000}.ap-eyebrow{letter-spacing:-.01em;color:hsl(var(--hue) 80% 52%);margin-bottom:14px;font-size:clamp(22px,2.4vw,28px);font-weight:600}.ap-tile.dark .ap-eyebrow{color:hsl(var(--hue) 90% 72%)}.ap-tile h2{letter-spacing:-.03em;text-wrap:balance;margin:0 auto;font-size:clamp(40px,5.2vw,60px);font-weight:700;line-height:1.05}.ap-desc{color:var(--muted);max-width:42ch;margin:22px auto 0;font-size:clamp(19px,2vw,23px);line-height:1.42}.ap-btns{flex-wrap:wrap;justify-content:center;gap:14px;margin-top:30px;display:flex}.ap-btns a{letter-spacing:-.01em;background:var(--link);color:#fff;min-width:120px;box-shadow:0 0 0 1px var(--link) inset;transition:background .15s ease, color .15s ease, transform .16s var(--ease-out);border-radius:980px;justify-content:center;align-items:center;padding:12px 22px;font-size:17px;display:inline-flex}.ap-btns a:active{transform:scale(.97)}.ap-btns a.ghost{color:var(--link);background:0 0}@media (hover:hover) and (pointer:fine){.ap-btns a:hover{background:color-mix(in srgb, var(--link) 88%, #fff)}.ap-btns a.ghost:hover{background:var(--link);color:#fff}}.ap-product{width:min(740px,100%);filter:drop-shadow(0 40px 60px hsl(var(--hue) 60% 30% / .28));margin-top:56px;display:block;transform:translate(-5%)}.ap-stage{background:radial-gradient(120% 140% at 20% 0%, hsl(var(--hue) 85% 62% / .55), transparent 55%), radial-gradient(100% 120% at 90% 100%, hsl(calc(var(--hue) + 40) 85% 60% / .45), transparent 55%), linear-gradient(160deg, hsl(var(--hue) 60% 22%), hsl(var(--hue) 50% 8%));width:min(980px,100%);box-shadow:0 30px 80px -30px hsl(var(--hue) 80% 40% / .5);border-radius:28px;flex-wrap:wrap;justify-content:center;gap:20px;margin-top:64px;padding:56px 40px;display:flex}.ap-tile.dark .ap-stage{box-shadow:0 0 0 1px #ffffff14, 0 30px 80px -30px hsl(var(--hue) 80% 60% / .5)}.ap-glass{text-align:left;color:#fff;-webkit-backdrop-filter:blur(16px);max-width:300px;transition:transform .2s var(--ease-out), background .2s var(--ease-out);background:#ffffff1a;border-radius:18px;flex-direction:column;flex:240px;gap:6px;padding:22px 22px 24px;display:flex;box-shadow:inset 0 0 0 1px #ffffff2e,0 8px 24px -12px #00000080}@media (hover:hover) and (pointer:fine){.ap-glass:hover{background:#ffffff29;transform:translateY(-4px)}}.ap-glass:active{transform:translateY(-2px)scale(.99)}.ap-glass strong{letter-spacing:-.01em;font-size:19px;font-weight:600}.ap-glass span{color:#ffffffb8;font-size:14px;line-height:1.4}.dobby{color:#6e6e73;-webkit-user-select:none;user-select:none;background:var(--light);justify-content:center;align-items:center;gap:8px;padding:44px 0 36px;font-size:14px;display:flex}.dobby img{object-fit:contain;flex:none;width:20px;height:20px}.dobby .ver{background:#6e6e731f;border-radius:980px;margin-left:6px;padding:2px 8px;font-size:12px}.area{flex-direction:column;height:100%;display:flex}.topbar{background:var(--card);height:48px;box-shadow:0 1px 0 var(--line);flex:none;align-items:center;gap:10px;padding:0 16px;display:flex}.brand{letter-spacing:-.02em;transition:background .12s ease, transform .1s var(--ease-out);border-radius:6px;margin-left:-6px;padding:4px 6px;font-weight:700}.brand:active{transform:scale(.97)}.brand:hover{background:var(--bg)}.sep{color:var(--muted);opacity:.5}.area-name{align-items:center;gap:8px;font-weight:600;display:inline-flex}.area-name .dot{background:var(--accent);width:10px;height:10px;box-shadow:0 0 0 4px var(--accent-soft);border-radius:50%}.tabs{scrollbar-width:none;align-items:center;gap:2px;min-width:0;margin-left:20px;display:flex;overflow-x:auto}.tabs a{color:var(--muted);white-space:nowrap;transition:background .12s ease, color .12s ease, transform .1s var(--ease-out);border-radius:7px;padding:6px 12px}.tabs a:active{transform:scale(.97)}.tabs a:hover{background:var(--bg);color:var(--ink)}.tabs a.active{background:var(--accent-soft);color:var(--accent);font-weight:600}.area main{flex:1;min-height:0}.stub{text-align:center;height:100%;color:var(--muted);place-content:center;display:grid}.stub h2{color:var(--ink);margin-bottom:6px;font-size:20px}.topbar .ver{color:var(--muted);background:var(--bg);border-radius:980px;flex:none;margin-left:auto;padding:2px 8px;font-size:12px}.topbar .user{color:var(--muted);white-space:nowrap;flex:none;align-items:center;gap:8px;display:inline-flex}.topbar .user button{color:var(--accent);font:inherit;cursor:pointer;transition:background .12s ease, transform .1s var(--ease-out);background:0 0;border:0;border-radius:6px;padding:4px 8px}.topbar .user button:active{transform:scale(.97)}.topbar .user button:hover{background:var(--accent-soft)}.login{place-items:center;height:100%;display:grid}.login-card{background:var(--card);width:340px;box-shadow:var(--shadow);opacity:1;transition:opacity .25s var(--ease-out), transform .25s var(--ease-out);border-radius:14px;flex-direction:column;gap:10px;padding:28px;display:flex;transform:none}@starting-style{.login-card{opacity:0;transform:translateY(6px)scale(.985)}}.login-card h2{font-size:20px}.login-card p{color:var(--muted);margin-bottom:8px}.login-card input{font:inherit;box-shadow:0 0 0 1px var(--line);background:var(--bg);border:0;border-radius:8px;padding:10px 12px;transition:box-shadow .15s}.login-card input:focus{box-shadow:0 0 0 2px var(--accent);outline:0}.login-card button{font:inherit;background:var(--accent);color:#fff;cursor:pointer;transition:transform .16s var(--ease-out), opacity .15s ease;border:0;border-radius:8px;margin-top:6px;padding:10px;font-weight:600}.login-card button:active:not(:disabled){transform:scale(.97)}.login-card button:disabled{opacity:.6}.login-err{color:#dc2626;opacity:1;font-size:13px;transition:opacity .2s}@starting-style{.login-err{opacity:0}}.cal{height:100%;display:flex}.cal-menu,.cal-fab,.cal-scrim{display:none}.cal-side{background:var(--card);width:220px;box-shadow:1px 0 0 var(--line);scrollbar-width:thin;flex-direction:column;flex:none;gap:10px;padding:16px;display:flex;overflow-y:auto}.cal-new{font:inherit;background:var(--card);box-shadow:0 1px 3px #0f172a2e, 0 0 0 1px var(--line);cursor:pointer;transition:box-shadow .15s var(--ease-out), transform .1s var(--ease-out);border:0;border-radius:980px;align-self:flex-start;padding:12px 18px;font-weight:600}.cal-new:hover{box-shadow:0 4px 12px #0f172a2e, 0 0 0 1px var(--line)}.cal-new:active{transform:scale(.98)}.cal-side ul{margin:0}.cal-side h4{color:var(--muted);letter-spacing:.02em;margin:6px 0 0;font-size:11px;font-weight:600}.cal-side li{align-items:center;display:flex}.cal-side label{cursor:pointer;white-space:nowrap;text-overflow:ellipsis;border-radius:6px;flex:1;align-items:center;gap:8px;padding:4px;font-size:13px;line-height:20px;display:flex;overflow:hidden}.cal-rename{color:var(--muted);cursor:pointer;opacity:0;transition:opacity .12s var(--ease-out), background .12s var(--ease-out);background:0 0;border:0;border-radius:6px;padding:3px 5px;display:inline-flex}.cal-side li:hover .cal-rename,.cal-side li:focus-within .cal-rename{opacity:1}@media (hover:none){.cal-rename{opacity:1}}.cal-rename:hover{background:var(--bg);color:var(--ink)}.cal-side label:hover{background:var(--bg)}.cal-side label small{color:var(--muted)}.cal-side input[type=checkbox]{display:none}.sw{background:var(--c);width:14px;height:14px;transition:background .12s var(--ease-out);border-radius:4px;flex:none}.cal-side input:not(:checked)+.sw{box-shadow:inset 0 0 0 2px var(--c);background:0 0}.cal-main{flex-direction:column;flex:1;min-width:0;display:flex}.cal-head{flex:none;align-items:center;gap:8px;height:48px;padding:0 16px;display:flex}.cal-head button{font:inherit;background:var(--card);box-shadow:0 0 0 1px var(--line);cursor:pointer;transition:background .12s ease, transform .1s var(--ease-out);border:0;border-radius:980px;padding:6px 12px}.cal-head button:active{transform:scale(.96)}.cal-head button:hover{background:var(--bg)}.cal-head h2{letter-spacing:-.01em;margin-left:8px;font-size:20px;font-weight:600}.cal-wds{background:var(--card);box-shadow:0 1px 0 var(--line);grid-template-columns:repeat(7,1fr);display:grid}.cal-wds div{text-align:center;color:var(--muted);letter-spacing:.02em;padding:6px 0;font-size:11px;font-weight:600}.cal-wds div:first-child{color:#d32f2f}.cal-viewport{flex:1;min-height:0;overflow:hidden}.cal-track{will-change:transform;touch-action:pan-y;width:300%;height:100%;display:flex;transform:translate(-33.3333%)}.cal-panel{background:var(--line);flex-direction:column;flex:none;gap:1px;width:33.3333%;min-height:0;display:flex}.cal-week{background:var(--line);flex:1;grid-template-rows:26px repeat(7,min-content) 1fr;grid-template-columns:repeat(7,1fr);gap:1px;min-height:0;display:grid;overflow:hidden}.cal-day{background:var(--card);cursor:pointer;flex-direction:column;grid-row:1/-1;align-items:center;padding:1px 4px 0;display:flex}.cal-day:first-child .cal-num{color:#d32f2f}.cal-day.dim .cal-num{color:#c0c4cc}.cal-day.dim:first-child .cal-num{color:#e8a5a5}.cal-num{border-radius:11px;place-items:center;min-width:22px;height:22px;margin:1px 0;padding:0 6px;font-size:12px;display:grid}.cal-num.today{background:var(--accent);color:#fff;font-weight:600}.cal-ev{z-index:1;font:inherit;text-align:left;cursor:pointer;white-space:nowrap;text-overflow:ellipsis;color:var(--ink);transition:background .12s ease, transform .1s var(--ease-out);background:0 0;border:0;border-radius:4px;align-items:center;gap:5px;min-width:0;margin:0 4px;padding:0 6px;font-size:11.5px;line-height:16px;display:flex;overflow:hidden}.cal-ev:active{transform:scale(.985)}.cal-ev:before{content:"";background:var(--c);border-radius:50%;flex:none;width:7px;height:7px}.cal-ev time{color:var(--muted);font-variant-numeric:tabular-nums}.cal-ev:hover{background:var(--bg)}.cal-ev.all{background:var(--c);color:#fff}.cal-ev.all:before{display:none}.cal-ev.all:hover{background:color-mix(in srgb, var(--c) 88%, #000)}.cal-ev.cl{border-radius:0 4px 4px 0;margin-left:0}.cal-ev.cr{border-radius:4px 0 0 4px;margin-right:0}.cal-ev.cl.cr{border-radius:0}.cal-ev.past{opacity:.55}.cal-ev.hol{cursor:default}.flag{border-radius:50%;flex:none;width:12px;height:12px;box-shadow:0 0 0 1px #fff9}.cal-side .flag{margin-right:-2px;box-shadow:0 0 0 1px #0f172a1f}.cal-ev.hol:hover{background:var(--c)}.cal-ev.hol:active{transform:none}.cal-more{z-index:1;font:inherit;color:var(--muted);text-align:left;cursor:pointer;transition:background .12s ease, color .12s ease, transform .1s var(--ease-out);background:0 0;border:0;border-radius:4px;margin:0 4px;padding:0 6px;font-size:11px;font-weight:600;line-height:16px}.cal-more:hover{background:var(--bg);color:var(--ink)}.cal-more:active{transform:scale(.97)}.daypop{z-index:30;width:232px;box-shadow:0 16px 48px -12px #0f172a59, 0 0 0 1px var(--line);transform-origin:0 0;opacity:1;transition:opacity .16s var(--ease-out), transform .16s var(--ease-out);background:#fff;border-radius:16px;padding:8px 10px 10px;position:fixed;transform:none}@starting-style{.daypop{opacity:0;transform:scale(.96)translateY(-4px)}}.daypop header{grid-template-columns:1fr auto 1fr;align-items:start;margin-bottom:6px;display:grid}.dp-date{text-align:center;flex-direction:column;grid-column:2;align-items:center;gap:0;padding-top:2px;display:flex}.dp-date small{letter-spacing:.04em;color:var(--muted);text-transform:uppercase;font-size:10px;font-weight:600}.dp-date b{border-radius:50%;place-items:center;width:30px;height:30px;font-size:17px;font-weight:500;display:grid}.dp-date b.today{background:var(--accent);color:#fff}.daypop .x{cursor:pointer;width:26px;height:26px;color:var(--muted);transition:background .12s ease, transform .1s var(--ease-out);background:0 0;border:0;border-radius:50%;grid-column:3;justify-self:end;font-size:13px}.daypop .x:hover{background:var(--bg);color:var(--ink)}.daypop .x:active{transform:scale(.92)}.daypop ul{scrollbar-width:thin;flex-direction:column;gap:2px;max-height:60vh;display:flex;overflow-y:auto}.daypop .cal-ev{border-radius:5px;width:100%;margin:0;font-size:12px;line-height:20px}.daypop .cal-ev:before{width:7px;height:7px}.cal-dlg{width:600px;max-width:calc(100vw - 32px);color:var(--ink);background:#f0f4f9;border:0;border-radius:20px;padding:0;box-shadow:0 24px 60px -12px #0f172a59}.cal-dlg:focus,.cal-dlg:focus-visible{outline:0}.cal-dlg[open]{opacity:1;transition:opacity .2s var(--ease-out), transform .2s var(--ease-out), overlay .2s allow-discrete, display .2s allow-discrete;transform:none}@starting-style{.cal-dlg[open]{opacity:0;transform:scale(.97)}}.cal-dlg[open]::backdrop{opacity:1;transition:opacity .2s var(--ease-out)}@starting-style{.cal-dlg[open]::backdrop{opacity:0}}.cal-dlg::backdrop{background:#0f172a40}.cal-dlg form{flex-direction:column;gap:14px;padding:16px 24px 20px;display:flex;position:relative}.cal-dlg .x{cursor:pointer;width:32px;height:32px;color:var(--muted);transition:background .12s ease, transform .1s var(--ease-out);background:0 0;border:0;border-radius:50%;font-size:16px;position:absolute;top:12px;right:14px}.cal-dlg .x:active{transform:scale(.92)}.cal-dlg .x:hover{color:var(--ink);background:#0f172a0f}.cal-dlg .title{font:inherit;letter-spacing:-.01em;color:var(--ink);background:0 0;border:0;border-radius:0;margin:24px 0 4px;padding:6px 0;font-size:22px;font-weight:400;transition:box-shadow .15s;box-shadow:0 1px #c4c7c5}.cal-dlg .title:focus{box-shadow:0 2px 0 var(--accent);outline:0}.cal-dlg .frow{color:var(--muted);grid-template-columns:20px 1fr;align-items:start;gap:14px;display:grid}.cal-dlg .frow svg{margin-top:6px}.cal-dlg .fbody{color:var(--ink);min-width:0}.cal-dlg .when{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.gpill{font:inherit;color:var(--ink);cursor:pointer;text-align:left;transition:background .12s ease, box-shadow .15s ease, transform .1s var(--ease-out);appearance:none;background:#e1e6ec;border:0;border-radius:8px;padding:9px 14px;font-size:14px}.gpill:active:not(:disabled){transform:scale(.98)}.gpill:hover:not(:disabled){background:#d5dbe3}.gpill:focus-visible{box-shadow:inset 0 -2px 0 var(--accent);outline:0}.gpill:disabled{cursor:default}.dpill{display:inline-block;position:relative}.mini{z-index:5;width:280px;box-shadow:0 12px 32px -8px #0f172a4d, 0 0 0 1px var(--line);transform-origin:0 0;opacity:1;transition:opacity .16s var(--ease-out), transform .16s var(--ease-out);background:#fff;border-radius:14px;padding:12px;position:absolute;top:calc(100% + 6px);left:0;transform:none}@starting-style{.mini{opacity:0;transform:scale(.96)translateY(-4px)}}.tlist{scrollbar-width:thin;width:168px;height:216px;margin:0;padding:8px;scroll-padding:8px;list-style:none;overflow-y:auto}.tlist li button{width:100%;height:40px;font:inherit;text-align:left;cursor:pointer;color:var(--ink);background:0 0;border:0;border-radius:8px;padding:0 12px;font-size:14px;transition:background .1s}.tlist li button:hover{background:var(--bg)}.tlist li button.sel{background:var(--accent-soft);color:var(--accent);font-weight:600}.mini header{align-items:center;gap:2px;margin-bottom:8px;padding-left:6px;display:flex}.mini header b{flex:1;font-size:14px;font-weight:600}.mini header button{font:inherit;cursor:pointer;width:30px;height:30px;color:var(--muted);background:0 0;border:0;border-radius:50%;font-size:18px}.mini header button:hover{background:var(--bg);color:var(--ink)}.mini-grid{grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.mini-grid .wd{text-align:center;color:var(--muted);letter-spacing:.02em;padding:4px 0;font-size:11px;font-weight:600}.mini-grid .wd:first-child{color:#d32f2f}.mini-grid button{font:inherit;cursor:pointer;height:32px;color:var(--ink);transition:background .1s ease, transform .1s var(--ease-out);background:0 0;border:0;border-radius:50%;font-size:13px}.mini-grid button:active{transform:scale(.92)}.mini-grid button:hover{background:var(--bg)}.mini-grid button.dim{color:#c0c4cc}.mini-grid button.today{box-shadow:inset 0 0 0 1px var(--accent)}.mini-grid button.sel{background:var(--accent);color:#fff;box-shadow:none;font-weight:600}.addtime{margin-left:auto}.allday{margin-top:10px;display:inline-block}.cal-dlg .dash{color:var(--muted);padding:0 2px}.cal-dlg textarea{font:inherit;color:var(--ink);resize:vertical;background:0 0;border:0;border-radius:0;width:100%;padding:6px 0;transition:box-shadow .15s;box-shadow:0 1px #c4c7c5}.cal-dlg textarea:focus{box-shadow:0 2px 0 var(--accent);outline:0}.cal-dlg .chips{flex-wrap:wrap;gap:6px;padding-top:4px;display:flex}.chip input{display:none}.chip span{cursor:pointer;transition:background .12s ease, color .12s ease, transform .1s var(--ease-out);background:#e1e6ec;border-radius:980px;padding:5px 12px;font-size:13px;display:inline-block}.chip:active span{transform:scale(.97)}.chip input:checked+span{background:var(--accent);color:#fff}.chip input:disabled+span{cursor:default}.swatch.sm{background:var(--c);border-radius:50%;flex:none;width:12px;height:12px;display:inline-block}.pill{font:inherit;background:var(--accent);color:#fff;cursor:pointer;transition:background .12s ease, transform .16s var(--ease-out);border:0;border-radius:980px;align-items:center;gap:8px;padding:9px 20px;font-weight:600;display:inline-flex}.pill:active{transform:scale(.97)}.pill:hover{background:color-mix(in srgb, var(--accent) 90%, #000)}.pill.ghost{color:var(--accent);background:0 0;padding:7px 14px;font-weight:500;box-shadow:inset 0 0 0 1px #c4c7c5}.pill.ghost:hover{background:#0f172a0d}.pill.danger{color:#c62828}.pill.danger:hover{background:#c6282814}.cats{grid-template-columns:repeat(3,1fr);gap:6px;padding-top:4px;display:grid}.cat input{display:none}.cat{display:block}.cat>span{white-space:nowrap;text-overflow:ellipsis;cursor:pointer;transition:background .12s ease, color .12s ease, transform .1s var(--ease-out);background:#e1e6ec;border-radius:980px;align-items:center;gap:8px;padding:6px 12px 6px 10px;font-size:13px;display:flex;overflow:hidden}.cat:active>span{transform:scale(.97)}.cat input:checked+span{background:color-mix(in srgb, var(--c) 16%, #fff);color:color-mix(in srgb, var(--c) 75%, #000);font-weight:600}.cat input:disabled+span{cursor:default}.cal-dlg footer{align-items:center;gap:8px;margin-top:6px;display:flex}.cal-dlg.confirm{width:420px}.cal-dlg.confirm form{gap:12px;padding:22px 24px 20px}.cal-dlg.confirm h3{letter-spacing:-.01em;margin:0;font-size:18px;font-weight:600}.cal-dlg.confirm .title{margin:0;font-size:17px}.dlg-sub{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin:-4px 0 0;font-size:14px;overflow:hidden}.dlg-acts{justify-content:flex-end;gap:8px;margin-top:6px;display:flex}.dlg-err{color:#c62828;text-align:right;margin:0;font-size:13px}.cal-dlg .who{color:var(--muted);font-size:13px}@media (width<=768px){.cal-side{z-index:20;transition:transform .3s var(--ease-drawer);position:fixed;inset:0 auto 0 0;overflow-y:auto;transform:translate(-100%);box-shadow:8px 0 32px -12px #0f172a59}.cal-side.open{transform:none}.cal-scrim{z-index:19;opacity:1;background:#0f172a4d;transition:opacity .25s;display:block;position:fixed;inset:0}@starting-style{.cal-scrim{opacity:0}}.cal-side .cal-new{display:none}.cal-menu{display:inline-flex}.cal-head{gap:4px;height:48px;padding:0 8px}.cal-head h2{margin-left:4px;font-size:17px}.cal-head button{padding:6px 10px}.cal-viewport{overflow:hidden auto}.cal-panel{min-height:100%}.cal-week{flex:1;column-gap:0;min-height:118px}.cal-day{padding:2px 0 0}.cal-day+.cal-day{box-shadow:inset 1px 0 #0f172a09}.cal-num{min-width:22px;height:22px;font-size:11px}.cal-ev{border-radius:3px;gap:3px;margin:0 2px;padding:0 4px;font-size:10.5px;line-height:16px}.cal-ev:before{width:6px;height:6px}.cal-ev time{display:none}.cal-more{padding:0 4px;font-size:10px}.cal-fab{z-index:5;background:var(--accent);color:#fff;cursor:pointer;width:56px;height:56px;transition:transform .16s var(--ease-out);border:0;border-radius:18px;place-items:center;font-size:26px;display:grid;position:fixed;bottom:24px;right:20px;box-shadow:0 8px 24px -6px #0f172a66}.cal-fab:active{transform:scale(.94)}.cal-dlg{border-radius:16px;width:calc(100vw - 16px);max-width:none}.cal-dlg form{gap:12px;padding:12px 16px 16px}.cal-dlg .title{margin-top:28px;font-size:20px}.gpill{padding:7px 10px;font-size:14px}.cats{grid-template-columns:repeat(2,1fr)}.topbar{gap:8px;padding:0 10px}.ap-btns{flex-direction:column;align-items:center;gap:10px}.dobby{flex-wrap:wrap;row-gap:8px;padding-bottom:28px}.dobby:after{content:"";flex-basis:100%;order:1}.dobby .ver{order:2;margin-left:0}.ap-btns a{width:min(260px,100%)}.topbar .ver,.topbar .sep,.topbar .area-name,.topbar .uname{display:none}.tabs{margin-left:4px}}@media (prefers-reduced-transparency:reduce){.ap-nav{-webkit-backdrop-filter:none;background:#fff}.ap-glass{-webkit-backdrop-filter:none;background:#ffffff38}}.ap.js .ap-tile>*{opacity:0;transition:opacity 1s var(--ease-reveal), transform 1.1s var(--ease-reveal), clip-path 1.1s var(--ease-reveal);transition-delay:calc(var(--k,0) * 75ms);transform:translateY(32px)}.ap.js .ap-tile>:nth-child(2){--k:1}.ap.js .ap-tile>:nth-child(3){--k:2}.ap.js .ap-tile>:nth-child(4){--k:3}.ap.js .ap-tile>:nth-child(5){--k:4}.ap.js .ap-tile>.ap-product{clip-path:inset(0 0 22% round 24px);transform:translate(-5%)translateY(36px)}.ap.js .ap-tile.in>*{opacity:1;transform:none}.ap.js .ap-tile.in>.ap-product{clip-path:inset(0);transform:translate(-5%)}.ap.js .ap-tile>.ap-stage .ap-glass{opacity:0;transition:opacity .9s var(--ease-reveal), transform .9s var(--ease-reveal), background .2s var(--ease-out);transition-delay:calc(.3s + var(--j,0) * 95ms);transform:translateY(22px)}.ap.js .ap-tile.in>.ap-stage .ap-glass{opacity:1;transition-delay:calc(.3s + var(--j,0) * 95ms), calc(.3s + var(--j,0) * 95ms), 0s;transform:none}@media (hover:hover) and (pointer:fine){.ap.js .ap-tile.in>.ap-stage .ap-glass:hover{transition-delay:0s;transform:translateY(-4px)}}.ap.js .ap-tile.in>.ap-stage .ap-glass:active{transition-delay:0s;transform:translateY(-2px)scale(.99)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-property:opacity,background-color,color,box-shadow!important;animation:none!important}.cal-side{transition:none!important}.ap.js .ap-tile>*,.ap.js .ap-tile>.ap-stage .ap-glass{clip-path:none!important;transform:none!important}}
