/* Visual personality only: the iOS viewport and keyboard geometry stay untouched. */
.home-screen .witny-greeting h1{font-size:34px;line-height:1.03;letter-spacing:-1.6px;font-weight:720}
.home-screen .witny-greeting h1 span{font-family:Georgia,serif;font-style:italic;font-weight:500;color:#e65d35}
.home-screen .witny-greeting .eyebrow{font-size:8px;letter-spacing:.12em}
.home-screen .mascot-button{position:relative;isolation:isolate}
.home-screen .mascot-button:before{content:'';position:absolute;inset:4px -5px;background:#f4eab3;border-radius:48% 52% 64% 36%;transform:rotate(-12deg);z-index:-1}
.home-screen .trip-cover{padding-top:174px;background:#173b30;border-radius:28px;margin-bottom:18px}
.home-screen .trip-cover .cover-copy{background:linear-gradient(140deg,#193f36f5,#15372bf5);color:#fff9ed;border:1px solid #ffffff26;box-shadow:none;padding:20px}
.home-screen .trip-cover .cover-copy h2{color:#fff9ed;font-size:28px;letter-spacing:-1px}
.home-screen .trip-cover .cover-copy p,.home-screen .trip-cover .cover-kicker{color:#e1e9d8}
.home-screen .trip-countdown{background:#edfa9a;border:0;color:#243b31;transform:rotate(-3deg);box-shadow:0 4px 20px #15231c12}
.home-screen .next-card{background:#f8efd9;border:0;border-radius:25px;position:relative}
.home-screen .next-card .eyebrow{color:#82602c}
.home-screen .next-card h2{font-size:25px;font-weight:650;letter-spacing:-.9px}
.home-screen .home-shortcuts button{background:#e8e6f4;border:1px solid #dbd8ec}
.home-screen .home-shortcuts button+button{background:#f9e7de;border-color:#f2d4c5}
.home-screen .home-shortcuts strong{font-size:25px}
.home-screen .home-budget{background:white;box-shadow:0 4px 18px #253c3105}
.home-studio{display:flex;position:relative;overflow:hidden;align-items:center;gap:16px;width:100%;padding:23px 20px;margin:20px 0;background:#253c33;color:#fff9ec;border:0;border-radius:26px;text-align:left;isolation:isolate}
.home-studio:after{content:'✳';position:absolute;font-size:150px;line-height:1;right:-29px;top:-45px;color:#dbec915c;z-index:-1;transform:rotate(14deg)}
.home-studio>span:first-child{display:grid;place-items:center;flex:0 0 49px;height:58px;background:#ff754c;color:#223b30;border:4px solid #fff5df;box-shadow:3px 4px 0 #101d16;transform:rotate(-8deg);border-radius:12px}
.home-studio svg{width:24px;height:24px;flex-shrink:0}
.home-studio strong{display:block;font-family:Georgia,serif;font-style:italic;font-weight:400;font-size:25px;line-height:1.05;letter-spacing:-.5px}
.home-studio small{display:block;color:#d9e2ce;font-size:11px;line-height:1.5;margin-top:8px}
.home-studio .studio-label{display:block;color:#dfed9f;font-size:9px;letter-spacing:.16em;font-weight:750;margin-bottom:8px}
.page-heading h1,.memories-title{letter-spacing:-1.1px}
.film-card{background:#f3f1e9;border:1px solid #deded1;padding:0;overflow:hidden;box-shadow:0 15px 42px #183b3010}
.film-overline,.film-headline,.film-card>p,.film-card>.film-strip,.film-card>.btn,.film-card>small,.film-editor{margin-left:20px;margin-right:20px}
.film-overline{padding-top:22px;color:#4d644d}
.film-pilot{background:#e3eabb;border:1px solid #d8dfa7;color:#365038}
.film-headline{position:relative;padding-right:15px;margin-top:27px;isolation:isolate}
.film-card h2{font-size:35px;line-height:1.02;letter-spacing:-1.45px;font-weight:750;margin:0}
.film-card h2 em{display:block;color:#dc5b34;font:italic 36px/1.05 Georgia,serif;letter-spacing:-1.3px;margin-top:3px}
.film-star{position:absolute;right:-16px;top:-27px;font-size:83px;line-height:1;color:#d8df9e;z-index:-1;transform:rotate(14deg)}
.film-card>p{font-size:13px;color:#61705d;max-width:300px;line-height:1.6;margin-top:17px}
.film-card>.btn{width:calc(100% - 40px);background:#243f34;box-shadow:0 5px 0 #cfd7ac}
.film-card>small{margin-top:16px;margin-bottom:25px}
.film-strip{gap:0;padding:9px 5px 18px;min-height:136px;align-items:center}
.film-strip img{height:118px;width:35%;border:5px solid #fff;border-bottom-width:19px;border-radius:9px;box-shadow:0 7px 14px #203c3020;transform:rotate(-9deg);object-fit:cover}
.film-strip img:nth-child(2){transform:rotate(5deg) translateY(-7px);z-index:1;margin-left:-5%;object-position:70% 50%}
.film-strip img:nth-child(3){transform:rotate(13deg);margin-left:-2%;object-position:20% 50%}
.film-editor{padding-bottom:15px}
.film-editor fieldset{border-top:1px solid #d8ddce;padding-top:20px;margin-top:25px}
.film-editor legend{padding:0 9px 0 0;font-size:16px;letter-spacing:-.4px}
.film-styles{gap:8px}
.film-styles button{padding:17px 7px;min-height:112px;border-radius:17px;text-align:left;background:#fffcf3;border:1px solid #dedfcd}
.film-styles button[data-film-style=energy]{background:#f9e3d5}
.film-styles button[data-film-style=emotion]{background:#e8e3f4}
.film-styles button[aria-pressed=true]{background:#263e32;border-color:#263e32;box-shadow:0 4px 0 #c6d294}
.film-transitions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.film-transitions>button{border:1px solid #d7ddcc;border-radius:16px;padding:8px;text-align:left;background:#fffdf5;color:#263e32;min-width:0}
.film-transitions>button[aria-pressed=true]{outline:2px solid #de633b;outline-offset:1px;background:#fff5e7}
.film-transitions strong{display:block;font-size:13px;margin:9px 3px 0}
.film-transitions small{margin:4px 3px 6px;font-size:10px}
.transition-sample{display:block;position:relative;height:63px;overflow:hidden;border-radius:10px;background:#132e28;isolation:isolate}
.transition-sample i,.transition-sample b{position:absolute;inset:0;display:block;background:radial-gradient(circle at 25% 36%,#ffd78a 0 15%,transparent 16%),linear-gradient(150deg,#df8053 0 55%,#bd623d 56%);transform:translateZ(0)}
.transition-sample b{background:radial-gradient(circle at 74% 30%,#eff6bb 0 14%,transparent 15%),linear-gradient(30deg,#416b56 0 51%,#9eb688 52%);opacity:0}
[aria-pressed=true] .transition-sample b{animation:sample-fade 4s ease-in-out infinite}
[aria-pressed=true] .transition-cut b{animation-timing-function:steps(1,end)}
[aria-pressed=true] .transition-slideleft b{animation-name:sample-slide;opacity:1}
[aria-pressed=true] .transition-fadeblack i{animation:sample-black 4s ease-in-out infinite}
[aria-pressed=true] .transition-fadeblack b{animation:sample-black-next 4s ease-in-out infinite}
@keyframes sample-fade{0%,20%,100%{opacity:0}45%,75%{opacity:1}}
@keyframes sample-slide{0%,20%,100%{transform:translateX(100%)}45%,75%{transform:translateX(0)}}
@keyframes sample-black{0%,20%,100%{opacity:1}40%,75%{opacity:0}}
@keyframes sample-black-next{0%,40%,100%{opacity:0}60%,75%{opacity:1}}
.film-advanced{margin-top:20px;border-radius:16px;background:#e8ecdf;padding:15px}
.film-advanced summary{list-style:none;display:flex;gap:10px;justify-content:space-between;align-items:center;font-size:12px;font-weight:750;line-height:1.5;cursor:pointer;min-height:34px}
.film-advanced summary::-webkit-details-marker{display:none}
.film-advanced[open] summary span{transform:rotate(45deg)}
.film-controls-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 12px}
.film-format{min-width:0;line-height:1.45}
.film-format select,.film-format input{width:100%;min-width:0;max-width:100%;font-size:16px;line-height:1.4;border:1px solid #cbd5c1;border-radius:12px;padding:12px 8px;background:#fffdf6;color:#263e32;margin-top:8px}
.film-story{background:#e8e4f0;border:0}
.film-sequence-item{border:1px solid #dce0d3;padding:10px}
.film-sequence-number{color:#9b4c31}
.film-sequence-preview[aria-pressed=true]{color:#c64f2a}
.film-preview{border:2px solid #d97850;box-shadow:0 8px 20px #42381709}
.film-result{background:#203b31;color:#fff8e8;padding:20px 14px;border-radius:18px;margin-bottom:20px}
.film-result small{color:#d2dfc9}
.film-result .btn{background:#e6edb7;color:#243e34;margin-top:8px}
.film-card input:focus-visible,.film-card select:focus-visible,.film-card summary:focus-visible{outline:2px solid #c14b28;outline-offset:3px}
@media(max-width:359px){.home-screen .witny-greeting h1{font-size:28px}.film-card h2{font-size:28px}.film-card h2 em{font-size:29px}.film-controls-grid{grid-template-columns:1fr}.film-styles{grid-template-columns:1fr}.film-styles button{min-height:0;display:flex;align-items:center;gap:10px;padding:13px}.film-styles strong{flex:0 0 88px}.film-styles small{margin:0}.home-studio strong{font-size:22px}}
@media(prefers-reduced-motion:reduce){.transition-sample i,.transition-sample b{animation:none!important}.transition-sample b{opacity:.5}}
