:root{font-family:'Yu Gothic UI',Meiryo,sans-serif;color:#20312f;background:#dfe7e5;font-size:15px;--green:#14654f;--line:#c7d2cf;--top:118px;--bottom:124px}*{box-sizing:border-box}html,body{margin:0;height:100%;overflow:hidden}button,select,textarea{font:inherit}button,select,summary{border:1px solid var(--line);border-radius:10px;background:#fff;color:inherit;min-height:42px;padding:8px 12px}button{cursor:pointer}button.active,.primary{background:var(--green);color:#fff;border-color:var(--green)}button:disabled{opacity:.38}.top-dock{position:fixed;inset:0 0 auto;z-index:20;height:var(--top);background:#fff;border-bottom:1px solid var(--line);box-shadow:0 3px 12px #20312f14}.file-actions,.tool-strip,.compact-group,.row,.layer-actions{display:flex;align-items:center;gap:6px}.file-actions{height:54px;padding:6px 10px;overflow-x:auto}.file-actions button{flex:0 0 auto}.file-actions .primary{font-weight:700}.tool-strip{height:64px;padding:7px 10px;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none}.tool-strip::-webkit-scrollbar{display:none}.tool-strip>button,.compact-group button{flex:0 0 auto;white-space:nowrap}.divider{height:32px;border-left:1px solid var(--line);margin:0 2px}.compact-group{gap:3px}.compact-group button{padding-inline:10px}.font-control{display:flex;align-items:center;gap:4px;white-space:nowrap}.font-control select{min-height:42px;padding-inline:7px}#colorPicker{position:relative;flex:0 0 auto}#colorPicker summary{display:flex;align-items:center;gap:7px;list-style:none;cursor:pointer;white-space:nowrap}#colorPicker summary::-webkit-details-marker{display:none}#currentColor{width:22px;height:22px;border:2px solid #d4ddda;border-radius:50%;background:#24332f}#palette{position:absolute;z-index:30;top:50px;left:0;width:174px;padding:12px;display:grid;grid-template-columns:repeat(5,1fr);gap:10px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 12px 35px #172d2738}#palette button{padding:0;min-height:24px;width:24px;height:24px;border:2px solid #d5dfda;border-radius:50%}#palette button.active{outline:3px solid var(--green);outline-offset:2px}.canvas-stage{position:fixed;inset:var(--top) 0 var(--bottom);min-height:0}.workspace{height:100%;display:flex;flex-direction:column}.paperbar{height:44px;flex:0 0 auto;display:flex;justify-content:space-between;align-items:center;padding:5px 12px;color:#526862;background:#edf2f1;border-bottom:1px solid var(--line);font-size:13px}.paperbar select{min-height:34px;padding:4px 8px;font-size:13px}#viewport{overflow:auto;flex:1;min-height:0;padding:14px 28px 32px;position:relative;overscroll-behavior:contain;background:radial-gradient(#bac8c3 .8px,transparent .8px) 0 0/12px 12px;touch-action:none}canvas{display:block;background:#fff;box-shadow:0 6px 25px #243d3620;touch-action:none;margin:0 auto;transform-origin:top left}footer{height:36px;flex:0 0 auto;padding:8px 12px;background:#f5f8f6;border-top:1px solid var(--line);font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bottom-dock{position:fixed;inset:auto 0 0;z-index:20;height:var(--bottom);padding:8px 10px;background:#f8fbfa;border-top:1px solid var(--line);box-shadow:0 -3px 12px #20312f14;overflow:hidden}.layer-actions{height:42px;overflow-x:auto}.layer-actions button{min-height:36px;padding:5px 10px;flex:0 0 auto}.bottom-dock #layers{height:66px;display:flex;gap:7px;overflow-x:auto;padding:5px 0}.layer{min-width:138px;max-width:170px;padding:4px 6px;border:1px solid #d4ded9;border-radius:9px;background:#fff;display:grid;grid-template-columns:1fr auto;gap:3px}.layer.active{border:2px solid var(--green);background:#eff8f3}.layer .name{min-height:30px;padding:3px 5px;border:0;background:none;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.layer .row{gap:2px}.layer .row button{min-height:30px;padding:2px 5px;font-size:12px}.help,.local-note{display:none}dialog{border:0;border-radius:14px;padding:24px;width:min(440px,90vw);box-shadow:0 20px 80px #0004}dialog::backdrop{background:#12251f88}textarea{width:100%;resize:vertical;margin:10px 0;padding:12px;border:1px solid #b7c9c0;border-radius:7px;font-size:16px}
@media(max-width:600px){:root{--top:112px;--bottom:116px}.file-actions{height:50px}.tool-strip{height:62px}.file-actions button,.tool-strip button,.tool-strip summary,.font-control select{min-height:40px;padding:7px 10px}.paperbar{height:40px}.paperbar span{font-size:12px}#viewport{padding:10px 16px 24px}.bottom-dock{padding:6px 8px}.layer-actions{height:38px}.layer-actions button{min-height:34px}.bottom-dock #layers{height:66px}}
#colorButton{display:flex;align-items:center;gap:7px;flex:0 0 auto}.floating-picker{position:fixed!important;z-index:40!important;top:116px!important;left:10px!important;padding:12px!important;background:#fff!important;border:1px solid var(--line)!important;border-radius:14px!important;box-shadow:0 12px 35px #172d2738!important}.floating-picker b{display:block;margin-bottom:9px}.floating-picker[hidden]{display:none!important}#palette.color-grid{width:218px;display:grid;grid-template-columns:repeat(6,1fr);gap:10px}#palette.color-grid button{padding:0;min-height:24px;width:24px;height:24px;border:2px solid #d5dfda;border-radius:50%}.layer{min-width:154px;max-width:190px;display:block}.layer .name{display:block;width:100%;min-height:28px;padding:2px 5px;font-weight:700}.layer .row{display:flex;width:100%;gap:3px}.layer .row button{flex:1;min-height:28px}.layer .opacity{display:grid;grid-template-columns:30px 1fr 30px;align-items:center;gap:3px;margin-top:3px;font-size:12px;text-align:center}.layer .opacity button{min-height:25px;padding:1px 4px}.text-options{display:flex;gap:10px;flex-wrap:wrap}.text-options label{display:grid;gap:5px;flex:1;min-width:130px}.tone-grid{display:grid;grid-template-columns:repeat(2,minmax(110px,1fr));gap:7px;width:min(300px,calc(100vw - 24px))}.tone-grid button{min-height:44px;padding:5px 8px;text-align:left;background:#fff}.tone-grid button.active{box-shadow:inset 0 0 0 2px #fff}.tone-swatch{display:inline-block;width:26px;height:26px;margin-right:7px;vertical-align:middle;border:1px solid #9aa9a4;border-radius:4px;background-color:#fff}.tone-swatch[data-tone="dotFine"]{background-image:radial-gradient(#24332f 1px,transparent 1px);background-size:5px 5px}.tone-swatch[data-tone="dotMid"]{background-image:radial-gradient(#24332f 1.5px,transparent 1.5px);background-size:7px 7px}.tone-swatch[data-tone="dotBold"]{background-image:radial-gradient(#24332f 2px,transparent 2px);background-size:10px 10px}.tone-swatch[data-tone="lines"]{background-image:repeating-linear-gradient(0deg,#24332f 0 1px,transparent 1px 5px)}.tone-swatch[data-tone="diagonal"]{background-image:repeating-linear-gradient(135deg,#24332f 0 1px,transparent 1px 6px)}.tone-swatch[data-tone="cross"]{background-image:repeating-linear-gradient(0deg,#24332f 0 1px,transparent 1px 6px),repeating-linear-gradient(90deg,#24332f 0 1px,transparent 1px 6px)}.tone-swatch[data-tone="mesh"]{background-image:repeating-linear-gradient(45deg,#24332f 0 1px,transparent 1px 7px),repeating-linear-gradient(-45deg,#24332f 0 1px,transparent 1px 7px)}.tone-swatch[data-tone="sparkle"]{background-image:radial-gradient(#24332f 1px,transparent 1.5px);background-size:9px 9px}.tone-swatch[data-tone="cloud"]{background-image:radial-gradient(#24332f 1px,transparent 1.5px);background-size:4px 4px}.tone-swatch[data-tone="speed"]{background-image:repeating-linear-gradient(165deg,#24332f 0 1px,transparent 1px 4px)}
