:root{--paper:#fffaf2;--ink:#17242d;--deep:#12364a;--green:#244c40;--vermillion:#c8402c;--sun:#e7ae47;--line:#12364a1c;--shadow:0 1.2rem 2.8rem #12364a1f}*{box-sizing:border-box}html{-moz-text-size-adjust:100%;text-size-adjust:100%;background:#edf4ef;width:100%;min-height:100%}body{width:100%;min-width:0;min-height:100svh;color:var(--ink);touch-action:manipulation;background:radial-gradient(circle at 12% 0,#c8402c29,#0000 19rem),linear-gradient(145deg,#f8fbf5 0%,#eef6ef 52%,#fff4df 100%);margin:0;font-family:Hiragino Sans,Hiragino Kaku Gothic ProN,Yu Gothic,Meiryo,system-ui,sans-serif;overflow-x:hidden}button,input,select,textarea{font:inherit}button{-webkit-tap-highlight-color:transparent}input,select,textarea,.output-box{font-size:16px}.app-shell{width:min(100%,56rem);min-height:100svh;margin:0 auto;padding:5.6rem .9rem 2rem}.auth-shell{place-items:center;padding-top:2rem;display:grid}.auth-card{border:1px solid var(--line);width:min(100%,28rem);box-shadow:var(--shadow);background:#fffffff0;border-radius:1.2rem;padding:1.2rem}.auth-brand{margin-bottom:1rem}.auth-message{color:#17242da8;margin:0;font-weight:800}.auth-form{gap:.8rem;display:grid}.auth-form label{color:var(--deep);gap:.4rem;font-size:.82rem;font-weight:900;display:grid}.auth-form input{width:100%;min-height:3.2rem;color:var(--ink);background:#fffffff5;border:1px solid #244c4029;border-radius:.85rem;padding:.8rem}.auth-form button{background:linear-gradient(135deg, var(--vermillion), var(--sun));min-height:3.15rem;color:var(--paper);cursor:pointer;border:0;border-radius:999px;font-weight:900}.auth-form button:disabled{cursor:progress;opacity:.72}.app-header{z-index:20;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffffff0;border:1px solid #244c401a;border-radius:1.2rem;justify-content:space-between;align-items:center;gap:.8rem;width:min(100% - 1.4rem,54rem);min-height:4rem;padding:.65rem .75rem;display:flex;position:fixed;top:.75rem;left:50%;transform:translate(-50%);box-shadow:0 1rem 2.4rem #12364a21}.brand{align-items:center;gap:.65rem;min-width:0;display:flex}.brand span{background:linear-gradient(135deg, var(--vermillion), var(--sun));width:2.45rem;height:2.45rem;color:var(--paper);border-radius:50%;flex:0 0 2.45rem;place-items:center;font-weight:800;display:grid}.brand strong,.brand small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.brand strong{color:var(--deep);font-size:.98rem}.brand small{color:#17242d9e;margin-top:.12rem;font-size:.72rem;font-weight:700}.icon-button{background:var(--deep);width:2.7rem;height:2.7rem;color:var(--paper);cursor:pointer;border:0;border-radius:50%;flex:0 0 2.7rem;place-items:center;font-size:1.7rem;font-weight:700;display:grid}.header-actions{flex:none;align-items:center;gap:.5rem;display:flex}.install-button{min-height:2.7rem;color:var(--deep);cursor:pointer;background:#fff7e9;border:1px solid #12364a24;border-radius:999px;padding:0 .8rem;font-size:.78rem;font-weight:800}.install-card{background:linear-gradient(135deg,#fff7e9,#fffffff0);border:1px solid #c8402c29;border-radius:1.1rem;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.8rem;margin:.75rem 0;padding:.95rem;display:grid;box-shadow:0 .8rem 1.8rem #12364a14}.install-card p,.install-sheet p{color:var(--vermillion);letter-spacing:0;text-transform:uppercase;margin:0;font-size:.72rem;font-weight:800}.install-card h2,.install-sheet h2{color:var(--deep);letter-spacing:0;margin:.18rem 0;font-size:1.18rem}.install-card small{color:#17242d9e;font-size:.76rem;font-weight:700}.install-card button,.install-sheet button{background:var(--vermillion);min-height:2.9rem;color:var(--paper);cursor:pointer;border:0;border-radius:999px;padding:0 1rem;font-weight:800}.hero{min-height:15.5rem;box-shadow:var(--shadow);border-radius:1.4rem;position:relative;overflow:hidden}.hero img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.hero-shade{background:linear-gradient(105deg,#12364ae6,#12364a57),linear-gradient(#0000 48%,#00000038);position:absolute;inset:0}.hero-content{z-index:1;min-height:15.5rem;color:var(--paper);align-content:end;padding:1.25rem;display:grid;position:relative}.hero-content p,.section-head p,.notice{color:#f4d187;letter-spacing:0;text-transform:uppercase;margin:0;font-size:.72rem;font-weight:800}.hero-content h1{letter-spacing:0;max-width:27rem;margin:.5rem 0 0;font-size:clamp(2.05rem,9vw,4.2rem);line-height:1.08}.workspace{gap:.85rem;display:grid}.editor,.preview{border:1px solid var(--line);min-width:0;box-shadow:var(--shadow);background:#ffffffe6;border-radius:1.2rem;padding:1rem}.section-head{justify-content:space-between;align-items:flex-start;gap:.85rem;margin-bottom:.85rem;display:flex}.section-head h2{color:var(--deep);letter-spacing:0;margin:.2rem 0 0;font-size:1.25rem}.editor label,.image-picker{color:var(--deep);gap:.42rem;margin-top:.85rem;font-size:.82rem;font-weight:800;display:grid}.editor input,.editor select,.editor textarea,.output-box{width:100%;min-width:0;color:var(--ink);background:#fffffff5;border:1px solid #244c4029;border-radius:.85rem;padding:.86rem}.editor textarea,.output-box{resize:vertical;line-height:1.7}.form-grid{grid-template-columns:1fr 1fr;gap:.65rem;display:grid}.image-picker input{background:#fff7e9;border-style:dashed}.photo-actions{color:#17242d94;justify-content:space-between;align-items:center;gap:.65rem;margin-top:.65rem;font-size:.78rem;font-weight:800;display:flex}.photo-clear-button{min-height:2.45rem;color:var(--deep);cursor:pointer;background:#ffffffc7;border:1px solid #12364a24;border-radius:999px;padding:0 .85rem;font-size:.78rem;font-weight:900}.photo-clear-button:disabled{cursor:not-allowed;opacity:.48}.danger-button{color:var(--vermillion);cursor:pointer;background:#c8402c12;border:1px solid #c8402c42;border-radius:999px;padding:.5rem .8rem;font-weight:800}.danger-button:disabled{cursor:progress;opacity:.7}.image-preview{color:#ffffffc7;text-align:center;background:linear-gradient(135deg,#12364ac7,#244c40ad),url(/sosha-torii.jpg) 50%/cover;border-radius:1rem;place-items:center;min-height:14.5rem;display:grid;overflow:hidden}.image-preview img{object-fit:cover;width:100%;height:100%;min-height:14.5rem}.image-preview span{color:#f4d187;text-transform:uppercase;font-size:.8rem;font-weight:800;display:block}.image-preview p{margin:.35rem 0 0;font-weight:800}.image-strip{grid-template-columns:repeat(5,minmax(0,1fr));gap:.45rem;margin-top:.55rem;display:grid}.image-strip img{aspect-ratio:1;object-fit:cover;border:2px solid #fff7e9;border-radius:.7rem;width:100%;box-shadow:0 .45rem .9rem #12364a1a}.channel-tabs{background:#12364a14;border-radius:.95rem;grid-template-columns:repeat(4,minmax(0,1fr));gap:.35rem;margin:.9rem 0;padding:.3rem;display:grid}.channel-tabs button{min-height:2.55rem;color:var(--deep);cursor:pointer;background:0 0;border:0;border-radius:.7rem;font-size:.76rem;font-weight:800}.channel-tabs button.is-active{background:var(--paper);color:var(--vermillion);box-shadow:0 .55rem 1rem #12364a14}.action-row{grid-template-columns:1fr 1fr;gap:.65rem;margin-top:.75rem;display:grid}.post-submit-button{background:linear-gradient(135deg, var(--vermillion), var(--sun));width:100%;min-height:3.35rem;color:var(--paper);cursor:pointer;border:0;border-radius:999px;margin-top:.8rem;font-weight:900;box-shadow:0 .8rem 1.4rem #c8402c33}.post-submit-button:disabled{cursor:progress;opacity:.72}.action-row button{background:var(--deep);min-height:3rem;color:var(--paper);cursor:pointer;border:0;border-radius:999px;font-weight:800}.action-row button:disabled{cursor:not-allowed;opacity:.48}.action-row button:first-child{background:var(--vermillion)}.notice{color:var(--vermillion);text-transform:none;margin-top:.85rem}.published-panel{background:#fffaf2;border:1px solid #244c401f;border-radius:1rem;margin-top:1rem;padding:.9rem}.published-panel-head{justify-content:space-between;align-items:flex-start;gap:.8rem;display:flex}.published-panel-head p{color:var(--vermillion);text-transform:uppercase;margin:0;font-size:.7rem;font-weight:900}.published-panel-head h3{color:var(--deep);letter-spacing:0;margin:.2rem 0 0;font-size:1.06rem}.published-panel-head button{min-height:2.35rem;color:var(--deep);cursor:pointer;background:#ffffffd1;border:1px solid #12364a24;border-radius:999px;padding:0 .8rem;font-size:.78rem;font-weight:900}.published-list{gap:.55rem;max-height:32rem;margin-top:.75rem;padding-right:.15rem;display:grid;overflow-y:auto}.published-item{border-top:1px solid #12364a1a;grid-template-columns:3.8rem minmax(0,1fr);align-items:start;column-gap:.7rem;padding-top:.65rem;display:grid}.published-item img{object-fit:cover;border-radius:.7rem;width:3.6rem;height:3.6rem}.published-placeholder{width:3.6rem;height:3.6rem;color:var(--deep);background:#12364a14;border-radius:.7rem;place-items:center;font-size:.75rem;font-weight:900;display:grid}.published-item-body{min-width:0}.published-item span{color:var(--vermillion);font-size:.7rem;font-weight:900}.published-item h4{color:var(--deep);letter-spacing:0;margin:.18rem 0 0;font-size:.94rem;line-height:1.45}.published-item small,.published-empty{color:#17242d99;font-size:.74rem;font-weight:700}.published-empty{margin:.75rem 0 0}.published-item-actions{grid-template-columns:1fr 1fr;gap:.45rem;margin-top:.55rem;display:grid}.published-item-actions button{background:var(--deep);min-height:2.35rem;color:var(--paper);cursor:pointer;border:0;border-radius:999px;font-size:.76rem;font-weight:900}.published-item-actions .published-delete-button{color:var(--vermillion);background:#c8402c14;border:1px solid #c8402c38}.published-item-actions button:disabled{cursor:progress;opacity:.58}.install-overlay{z-index:60;background:#12242d6b;align-items:end;padding:1rem;display:grid;position:fixed;inset:0}.install-sheet{background:#fffffffa;border:1px solid #ffffff80;border-radius:1.2rem;width:min(100%,30rem);margin:0 auto;padding:1.1rem;box-shadow:0 1.4rem 3.2rem #12242d42}.install-sheet ol{color:var(--ink);gap:.55rem;margin:.9rem 0 1rem;padding-left:1.25rem;line-height:1.65;display:grid}.install-sheet li::marker{color:var(--vermillion);font-weight:800}.install-sheet button{width:100%}@media (min-width:880px){.app-shell{padding-top:6rem}.workspace{grid-template-columns:minmax(0,1fr) minmax(22rem,.92fr);align-items:start}}@media (max-width:560px){.app-shell{padding:calc(env(safe-area-inset-top) + 4.25rem) .55rem calc(env(safe-area-inset-bottom) + 1.15rem)}.auth-shell{padding-top:calc(env(safe-area-inset-top) + 1rem)}.auth-card{border-radius:1rem;padding:1rem}.app-header{top:calc(env(safe-area-inset-top) + .45rem);border-radius:1rem;gap:.45rem;width:calc(100% - .8rem);min-height:3.35rem;padding:.48rem .55rem}.brand{gap:.48rem}.brand span{flex-basis:2.1rem;width:2.1rem;height:2.1rem}.brand strong{font-size:.86rem}.brand small{display:none}.header-actions{gap:.35rem}.install-button{max-width:5.8rem;min-height:2.35rem;padding-inline:.65rem;font-size:.72rem}.icon-button{flex-basis:2.35rem;width:2.35rem;height:2.35rem;font-size:1.45rem}.install-card{grid-template-columns:1fr}.install-card button{width:100%}.hero,.hero-content{border-radius:1rem;min-height:9.4rem}.hero-content{padding:.85rem}.hero-content p,.section-head p,.notice{font-size:.68rem}.hero-content h1{max-width:13rem;font-size:1.45rem;line-height:1.16}.editor,.preview{border-radius:1rem;padding:.82rem}.section-head{gap:.55rem;margin-bottom:.65rem}.section-head h2{font-size:1.08rem}.danger-button,.photo-button{padding-inline:.75rem}.image-preview{border-radius:.85rem;min-height:10.6rem}.image-preview img{min-height:10.6rem}.form-grid,.action-row{grid-template-columns:1fr}.channel-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}}
